主要框架
Java的Web框架雖然各不相同,但基本也都是遵循特定的路數的:使用Servlet或者Filter攔截請求,使用MVC的思想設計架構,使用約定,XML或 Annotation實現配置,運用Java面向對象的特點,面向對象實現請求和回響的流程,支持Jsp,Freemarker,Velocity等視圖。
JSP優點:
Java EE標準,這意味著有很大的市場需求和更多的工作機會
上手快速並且相對容易
有大量可用的組件庫
JSP缺點:
大量的JSP標籤
對REST和安全支持不好
沒有一個統一的實現。既有SUN的實現,又有Apache的實現——MyFaces。
Spring MVC優點:
對Spring MVC覆蓋綁定(overriding binding)、驗證(validation)等提供生命周期管理
與許多表示層技術/框架無縫集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF 等
便於測試——歸功於IoC
Spring MVC缺點:
大量的XML配置檔案
太過靈活——沒有公共的父控制器
沒有內置的Ajax支持
Stripes優點:
不需要書寫XML配置檔案
良好的學習文檔
社區成員很熱心
Stripes缺點:
社區比較小
不如其他的項目活躍
ActionBean裡面的URL是硬編碼的
Struts 2優點:
架構簡單——易於擴展
標記庫很容易利用FreeMarker或者Velocity來定製
基於控制器或
者基於頁面的導航
Struts 2缺點:
文檔組織得很差
對新特徵過分關注
Tapestry優點:
一旦學會它,將極大地提高生產率
HTML模板——對頁面設計師非常有利
每出一個新版本,都會有大量的創新
Tapestry缺點:
文檔過於概念性,不夠實用
學習曲線陡峭
發行周期長——每年都有較大的升級
Wicket優點:
對Java開發者有利(不是Web開發者)
頁面和顯示綁定緊密
社區活躍——有來自創建者的支持
Wicket缺點:
HTML模板和Java代碼緊挨著
需要對OO有較好的理解
Wicket邏輯——什麼都用Java搞定
關於Java
詹姆斯·戈士林博士以“Java技術之父”聞名於世。
他是Java技術的創始人, 作為Sun研究院院士,他親手設計了Java語言,完成了Java技術的原始編譯器和虛擬機。在他的帶領下,Java現已成為網際網路的標準編程模式以及分散式企業級套用的事實標準,其跨平台的技術優勢為網路計算帶來了劃時代的變革。戈士林博士積極致力於軟體開發工具的研究,以使軟體開發工具的功能更強大,更容易為開發人員所使用,確保套用、服務開發的迅速完成。
Java技術是Sun公司在1995年5月正式推出的。20多年來,Java已從程式語言發展成為全球第一大通用開發平台。Java技術已為計算機行業主要公司所採納,同時也被越來越多的國際技術標準化組織所接受。1999年,Sun推出了以Java 2平台為核心的J2EE、J2SE和J2ME三大平台。隨著三大平台的迅速推進,在世界上形成了一股巨大的Java套用浪潮。同時,Java技術還引發了一場無法停止的大變革,為整個Java社團帶來了巨大的潮水般的商業機會。
Java技術及其套用將有更大的發展。據IDC預計,自2001年起的其後5年內,採用Java的IT產品的價值將翻番,在2006年將達到4.53億美元,年增長率為14.9%。截止到2003年5月,註冊Java Developer Connection (JDC)的Java開發商超過300萬人,對JRE(Java運行環境)的下載達7,200萬次。Sun在JavaOne 2003大會上確定的目標是,在3~5年內使Java技術開發商從今天的300萬發展到1,000萬,以支持Java技術這一全球領先技術平台的顯赫地位。