2010-08-06 43 views
2

我目前正面臨着需要創建用戶前端應用程序到數十個表和數千個字段的數據庫。java swing應用程序中數據庫和用戶界面之間自動數據綁定的最佳方式?

它應該是java swing應用程序,我試圖找到儘可能多的自動化解決方案。理想情況下,完全避免手動創建DAO層,bean定義和GUI創建。

目前我們正在討論將數據庫轉換爲XML文檔集的可能性,因此解決方案應該包括與關係數據庫以及XML文檔一起工作的能力。

任何想法/ experinece?

回答

2

實際上有兩個步驟:

1日是選擇的對象關係映射(ORM)。這可以是JPA提供程序,JDO提供程序或類似Hibernate的東西。 JPA是用於在Java對象和數據庫之間進行映射的語言支持規範。我也使用過Hibernate(Hibernate很混亂,因爲它既是一個獨立的ORM又是一個JPA提供者),它對我來說工作得很好。您的ORM將描述您將Java對象的類/字段存儲到哪些表/行中,並且它還會提供事務和機制,以便在您的應用程序方便時持久保存Java對象更改。

如果您正在考慮將數據存儲爲XML,那麼您可能需要將DataNucleus作爲JPA/JDO提供商,該提供商早期支持xml存儲。

第二是選擇你的綁定框架。如果您使用的是Swing,那麼NetBeans平臺是垃圾站建議的自然選擇。 NetBeans提供了大量技術,旨在簡化包括綁定技術在內的應用程序開發。如果您使用NetBeans IDE,那麼您將獲得內置的GUI創建工具。我對GUI創建工具沒有經驗,所以我不能說比現有更多的東西。

如果你正在做一個直接的Swing富客戶端數據庫,那麼你不需要使用DAO。 DAO在客戶端和服務器都有代碼的多層應用程序中非常有用。如果你在客戶端運行所有的邏輯,而服務器只是一個數據庫,那麼你不需要DAO。

5

這是一個很複雜的話題,可能會使Community Wiki變得很好。我只是抓住了表面,但NetBeans在這方面有不斷髮展的能力。它應該在你的短名單上。見這些幫助主題&鏈接:

  1. 生成JPA控制器類通過實體類
  2. 數據綁定到一個Swing組件
  3. Java持久性任務:快速參考
  4. Best Practices with JPA and Beans Binding
  5. Using Java Persistence API for Java SE 7 Desktop applications in NetBeans 7
+0

另請參閱此基本[示例](http://stackoverflow.com/a/2531942/230513)。 – trashgod 2013-10-02 19:05:55