我有一個適度複雜的應用程序使用POJO,現在將它遷移到EJB3.1,以便它可以在線部署,通過REST服務訪問並受益於容器環境(持久性是最重要的,但事務會有用太)。Java EE 6 - 持久域對象模式 - 任何成功?
自從J2EE時代以來,我已經離開了Java EE,並且一直在努力解決實體bean的「損失」問題。我花了一段時間才意識到EJB3.1中的實體實際上並不是舊的Bean中的實體...... :)我已經閱讀了許多EJB3書籍,包括O'Reilly Enterprise JavaBeans 3.1「手冊」,所有這些都解釋EJB3的概念和組件,但不包括實現模式選項。
在我的研究和調查中尋找Java EE 6模式,我寧可採用Adam Bien的方法 - 特別是「持久域對象」(PDO)模式(在他的書中,但也總結爲:http://download.java.net/general/podcasts/real_world_java_ee_patterns.pdf),以提供最小的複雜性和協同作用與我目前的POJO應用程序。 PDO也與傳統的面向對象的哲學和方法緊密結合,真正吸引我。
與其停止對PDO的辯論,我很有興趣聽到已經實施它的人以及哪些方面有效,哪些方面有困難。特別是我想知道你是如何從撥打的JPA實體進入容器中的其他服務(如調用無狀態會話bean等)。
我也很想知道是否有替代PDO模式,允許我維護應用程序結構(使用多態等)而無需爲我的模型中的每個類創建會話bean和JPA實體。 (我不想這樣做,部分原因是重構所有單元和集成測試所需的大量練習,部分原因是 - 據我所見 - 我最終將嘗試複製我的1toMany等對象關係在我的會話bean中也看起來很瘋狂)。
沒有人有任何的經驗分享 - 或者,如果你想指出我是一個白癡,已經錯過了在Java EE 6的一些基本的東西,這將是「歡迎」太:)
TIA
恭喜修復!如果可以,請確保將您的答案標記爲「已接受」,以便其他人會看到您的問題已得到解答,並能夠從您的解決方案中學習。乾杯〜 – 2012-03-30 16:16:56