2013-03-26 44 views
1

有人可以給我一個解釋,如果我在做什麼有意義嗎?使用MongoDB而不使用JPA或EJB的Java EE?

我目前正在開發一個使用MVC架構和MongoDB作爲我的數據庫的Java EE應用程序。我所擁有的是幾個實體,它們被編寫成具有自定義映射方法的Java對象,以便持久存儲在我的MongoDB中,以及一個單獨的控制器類來執行數據庫查詢和操作。我能夠將這些實體存儲在我的會話中,沒有任何問題,但我沒有在更大的範圍內對其進行測試。我試着將我的對象註釋爲bean,但是我收到了錯誤。

我發送數據的典型方法是查詢我的MongoDB,接收信息,將它映射到一個java對象,並將它存儲在前端要訪問的會話中。這是正確的方式去做這件事嗎?

我的實體是否需要成爲EJB?從創建EJB獲得什麼?如果這個問題呈現得很差並且看起來不明智,我很抱歉。我只想在進一步開發之前更好地理解我正在嘗試使用的技術。我在這些主題上所做的大部分閱讀都是徒勞的。如果任何人有一些清晰的閱讀或解釋,應該可以幫助我理解我所要求的,這將是最感激的。

回答

0

我認爲「EJB」是指「Entity Beans」?在EJB 3中,實體bean被JPA「替換」。將JPA視爲ORM框架的「規範」。 JPA/ORM是將Java對象映射到關係數據庫和從關係數據庫映射Java對象的框架。您正在使用MongoDB,它不是關係數據庫,因此不適合JPA。所以我會說不,你沒有必要考慮JPA。相反,你應該考慮其他框架,比如Spring Data,它可以簡化你正在做的任務。

+0

我的感覺是真的。我讀到的關於EJB和JPA的所有內容都回到了RDBMS中,這與我無關。我想我只是擔心我的對象需要「EJB質量」在會話屬性中存儲和正常運行。謝謝您的回答! – 2013-03-26 22:58:21

0

在我看來,你可以在沒有JPA和實體管理器的情況下使用帶有mongodb的EJB3,但是你將擁有0配置的無狀態/ Singleton /啓動/ MDB bean和完美的可管理後端。