2011-06-17 34 views
1

我通常是一個Web開發人員,所以我習慣了ORM風格的抽象,但是現在發現自己在桌面應用程序上工作。在桌面應用程序中使用JPA實現?

由於啓動速度較慢,我已經閱讀了有關在桌面應用程序中使用Hibernate的一些警告,以及關於JPA實現未準備好桌面的blog posts

我希望現代J2SE桌面應用程序的標準做法是不只是存儲的ArrayList中的對象,並且有某種持久層,可以幫忙....

+0

有什麼「桌面」或「下載大小」與JPA實現不適用於應用程序?你需要一個EMF,所以這可能是第二個啓動它,但這可以很容易地在應用程序啓動時被吞噬。 – DataNucleus

回答

1

的博客你指的是談論大小,而不是啓動時間。

如果您正在編寫真正的桌面應用程序,那麼您不必擔心添加其他API的大小或引導時間影響。只需查看Eclipse(Java)或Microsoft Word(本機)的安裝和啓動時間的大小即可。

儘管我可以看到啓動時間懲罰可能是小命令行實用程序的問題。

+0

此外,博客標題是錯誤的。作者所做的論點是JPA尚未準備好用於Web部署的桌面應用程序(例如WebStart)。此外,那是在2008年,事情可能已經改變。 如果真的是你擔心的事,Datanucleus有幾個選項可以用來微調啓動時間。您可以顯式列出類,以便它不必掃描它們。您可以禁用自動啓動,以便延遲加載元數據等。我自己也沒有做過,所以我不知道它有多快,但它的價值正在調查。 – Pace

+0

Eclipse的開始時間很糟糕:)發佈後不久,NetBeans默認使用EclipseLink進行持久化:http://platform.netbeans.org/tutorials/nbm-crud.html#creating-app – bcoughlan