2010-05-27 63 views
8

如果你今天要開始一個全新的Java項目符合下列要求:如果您今天開始使用什麼堆棧,您將用於新的Web Java項目?

  • 高檔次(20K +用戶)

  • 您要使用的東西,是相當成熟的(沒有顯着變化) &不會在3年內成爲死亡技術

  • 您希望提高生產力(無需在dev中重新啓動服務器,保存代碼並自動編譯和部署),生產力和上市時間至關重要。

  • 在前端AJAX的一些量

  • 沒有腳本語言(的JRuby,Groovy中,PHP等),它必須是Java的

  • 必須支持國際化

你會使用什麼堆棧&爲什麼? (當我說棧,我的意思是,所有的湯堅果,所以應用服務器,MVC框架,豆框架,ORM框架,JavaScript框架等...)

回答

3

爲傳統的Java Web應用程序,爲您的目標,我將作爲MVC框架使用stripes,因爲它非常容易設置和運行,並且它在spring和hibernate中運行良好,並且具有良好的ajax支持。

就生產力而言,eclipse動態web項目應該解決你的編譯/部署問題。我一直使用它與tomcat,但它也應該與jBoss一起工作。

我個人會使用tomcat,stripes(mvc),hibernate(orm),spring(如果需要),jQuery(js)和eclipse進行開發。

+0

條紋是否受歡迎? – Adam 2010-05-27 20:38:10

10

我會考慮使用Java EE 6棧:

  • 的GlassFish v3的爲應用服務器:不重,非常有成效的發展(和GlassFish 3.1中,要在今年年底之前發佈,將有集中管理/集羣和高可用性/狀態複製)
  • 用於演示的JQuery,JSF 2(或Wicket)
  • CDI,EJB 3.1(Lite?),JPA 2.0(Hibernate 3。5+或的EclipseLink)
  • Arquillian(1)與焊接SE和/或嵌入式的GlassFish用於測試

(1)參見:

+0

呃... Arquillian究竟是什麼?它的網頁並不完全清楚,Overview鏈接將我帶回到主要的JBoss頁面。 – Powerlord 2010-05-27 20:53:32

+0

@ R.Bemrose:這是一個集成測試的測試工具。我更新了項目網站的鏈接(並添加了更多鏈接)。 – 2010-05-27 21:09:36

3
  • 掛毯5 & JQuery的(Tapestry 5中已經被設計爲面向未來的,不需要重新啓動服務器和超快與發展 - 組件lean-它也很好地進行擴展)
  • Spring爲bean配置(掛毯支持基於註釋的Spring bean配置)
  • 手工精製JDBC的關係模型(因爲我不喜歡ORM增加另一個代碼層,和手工製作,可以更好地調整)
  • 的Lucene對不索引或數據需要以關係方式查詢
  • Tomcat(或Jetty if嵌入式) - 兩者都是可靠的,經過充分測試的服務器
+0

我聽說EJB3/JPA2在ORM方面沒有那麼糟糕。再次,EJB3/JPA2是接口,而不是實現。 – Powerlord 2010-05-27 20:54:35

+1

幾乎相同的答案,但我肯定會使用Querydsl(http://source.mysema.com/display/querydsl/Querydsl)進行查詢構建。 – ponzao 2010-05-27 20:58:31

0

Scala和春天

1

我會去:

  • 的Oracle 11g數據庫。
  • 帶EclipseLink的JPA 2.0 ORM。
  • Glassfish v3(至少直到Oracle WebLogic變爲兼容Java EE 6),提供任何消息隊列,數據庫連接池或您可能需要的任何JCA資源。

我不會去JSF ...... JSF 2.0比JSF 1.0好得多,但在某些領域仍然很臭。在「違背JSF方式」的情況下(或者確切地說,在JSF中不適合),你肯定會碰壁。

如果你有一些你想要控制的複雜導航,我會用Spring 3.0框架和Spring MVC的Spring MVC。如果您願意,也可以選擇讓Web部件位於單獨的服務器上(如Tomcat),並通過IIOP調用Glassfish上託管的EJB,從而擴大規模。

如果你想完全控制你的頁面設計(也許你打算僱用一個網頁設計師來保持外觀和感覺),我會選擇像Velocity這樣的模板引擎,它很好地集成了Spring MVC和設計師友好與大多數工具,如Dreamweaver。

最後,JQuery使用一些現成的Javascript小部件,如日曆控件,彈出窗口,用戶消息和轉換。

+5

Oracle?去了預算...... – 2010-05-27 21:56:37

+1

你能詳細談談「JSF 2.0仍然很臭」的評論嗎? – 2010-05-27 21:57:06

+0

沒有指定預算限制。問題更多的是面向可靠性和敏捷性。一個Oracle標準版應該可以做到這一點,而不會因預算過度而過分,並且Real Application Clustering可以直接使用。否則像Postgresql或Mysql會做的,但他們的集羣解決方案並不強大,實際上,如果你想得到適當的支持,仍然有成本。儘管如此,所有這些都是好的數據庫 – jbx 2010-05-27 22:04:22

相關問題