2011-07-07 40 views
5

我對依賴注入的概念相當陌生,目前我們正在使用JSF和Primefaces編寫一個Web應用程序。我們正在評估是否使用Spring或EJB3。我真的很接近選擇春天,但後來我聽說了CDI。你能給我們一些提示,這可能是對於以下情況最好的提示:Spring或CDI或EJB3

我們目前對J2EE世界很新,不知道我們是否會使用Glassfish或JBoss(或者可以簡單地堅持Tomcat) 。

Web應用程序基本上是企業CRUD應用程序的原型,它需要能夠處理複雜的業務邏輯。我們希望專注於「適應性」,因爲一些要求不明確,將在一年後決定(當我們知道我們是否仍然可以使用原型時)。

我們不能使用Hibernate,因爲我們必須編寫非常複雜的SQL語句。目前我們在Spring中對SQL抽象有了很好的體驗。

Maybee我目前正在比較蘋果和橘子,但如果您是j2ee的新手,信息太多了。我認爲EJB是通過JCP定義的標準,Spring是市場定義的標準,CDI也是JCP定義的標準,用於Spring的功能。但我肯定是錯的;-)。

THX,

iuiz

+1

簡單的問題,不可能的答案。當然,您的要求不會排除競爭對手中的任何競爭對手。對於Google來說,圍繞這個主題進行諸多火焰戰爭相當容易 - 最終的決定將完全取決於您和您的偏好。 –

+0

Thx。但這是你到達那裏的一個非常重要的觀點,因爲至少我知道我沒有看到完全無用和過時的東西。 – iuiz

回答

8

林肯巴克斯特做了出色的工作,解釋本文中的技術差異:http://ocpsoft.com/java/spring-to-java-ee-a-migration-guide-cdi-jsf-jpa-jta-ejb/長話短說:Spring和CDI都將能夠提供依賴注入。一個是Java EE標準,另一個是公知的技術。 Glassfish和JBoss都可以毫無問題地運行Spring應用程序和CDI應用程序。就不能使用Hibernate而言,在Hibernate中不能使用native SQL。如果可以的話,可以爲您的團隊節省很多額外的簡單CRUD代碼。

+0

謝謝。我會研究這篇文章。它看起來很有希望。然而,Hibernate的東西是我剛纔問的問題http://stackoverflow.com/questions/5769943/java-database-abstraction-for-gwt-or-is-hibernate-a-good-choise,我們決定反對它。 – iuiz