WebWork
?????????WebWork是由OpenSymphony組織開發的,致力于組件化和代碼重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,現在的WebWork2.x前身是Rickard Oberg開發的WebWork,但現在WebWork已經被拆分成了Xwork1和WebWork2兩個項目。 Xwork簡潔、靈活功能強大,它是一個標準的Command模式實現,并且完全從web層脫離出來。 Xwork提供了很多核心功能:前端攔截機(interceptor),運行時表單屬性驗證,類型轉換,強大的表達式語言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等。 WebWork2建立在Xwork之上,處理HTTP的響應和請求。WebWork2使用ServletDispatcher將HTTP請求的變成Action(業務層Action類), session(會話)application(應用程序)范圍的映射,request請求參數映射。WebWork2支持多視圖表示,視圖部分可以使用JSP, Velocity, FreeMarker, JasperReports,XML等。在WebWork2.2中添加了對AJAX的支持,這支持是構建在DWR與Dojo這兩個框架的基礎之上
Struts?????????Struts是一個基于Sun J2EE平臺的MVC框架,主要是采用Servlet和JSP技術來實現的。由于Struts能充分滿足應用開發的需求,簡單易用,敏捷迅速,在過去的一年中頗受關注。Struts把Servlet、JSP、自定義標簽和信息資源(message resources)整合到一個統一的框架中,開發人員利用其進行開發時不用再自己編碼實現全套MVC模式,極大的節省了時間,所以說Struts是一個非常不錯的應用框架。
EasyJWeb是基于java技術,應用于WEB應用程序快速開發的MVC框架,框架設計構思來源于國內眾多項目實踐,框架充分借簽了當前主要流行的開源Web框架(Struts、JSF、Tapestry 、Webwork),吸取了其優點及精華,利用Velocity作為模板頁面引擎,是一個實現了頁面及代碼完全分離的MVC開發框架。是一個能實現中小型Web應用系統快速開發的簡易Web框架。
?
EasyJWeb
?????????????EasyJWeb是基于java技術,應用于WEB應用程序快速開發的MVC框架,框架設計構思來源于國內眾多項目實踐,框架充分借簽了當前主要流行的開源Web框架(Struts、JSF、Tapestry 、Webwork),吸取了其優點及精華,利用Velocity作為模板頁面引擎,是一個實現了頁面及代碼完全分離的MVC開發框架。是一個能實現中小型Web應用系統快速開發的簡易Web框架。
通過EasyJWeb Tools提供的配套開發工具,可以實現基于EasyJWeb框架的Web應用快速開發,包括常用應用軟件的代碼自生成、數據庫添刪改查(CRUD)代碼生成、自動頁面模版生成、配置文件管理等。
框架特點:
1、零配文件置支持。以前我們每接觸一個框架,開始總都要被他的配置文件折騰一番。EasyJWeb實現零配置支持,可以不寫一句配置文件就在框架基礎上構建你的運用。(適合小型網站系統)。
2、簡易的模板頁面設計支持:放棄使用jsp,使用簡單Velocity腳本語言作為頁面模板。
3、頁面程序完全分離:實現顯示頁面與程序邏輯的完全分離,克服了傳統jsp頁面難于維護的問題。
4、基于頁面組件的框架。靈活的頁面組件配置,可以直接通過配置文件設置字段級的事件組件。
5、快速開發支持:通過EasyJWeb Tools,可以自動生成應用軟件模板代碼,定制并管理自己的J2EE代碼模板,代碼生成模板支持最流行的實用Java開發框架(如hibernate、Spring等)實現快速開發。
Tapestry?
????????Tapestry是一個開源的基于servlet的應用程序框架,它使用組件對象模型來創建動態的,交互的web應用。一個組件就是任意一個帶有jwcid屬性的html標記。其中jwc的意思是Java Web Component。Tapestry使得java代碼與html完全分離,利用這個框架開發大型應用變得輕而易舉。并且開發的應用很容易維護和升級。Tapestry支持本地化,其錯誤報告也很詳細。Tapestry主要利用javabean和xml技術進行開發。
Turbine?
???????????Turbine是基于Servlet的框架包,也是開放源代碼Jakarta項目。目前還沒有關于Turbine的大量文檔。它類似于Struts,但是有一些主要區別。突出的一點就是它并沒有與JSP耦合。Turbine的特點是它提供了大量可重用的組件。此框架包中包含了大量組件,但是這些組件是離散的。它似乎應該給出更多的組件庫,但是由于它缺少文檔,所以很難掌握完整的體系結構。
OpenBlueLab
?????????OpenBlueLab是一個用于構建Web2.0 Portal系統的快速開發框架。其主頁就是采用該框架開發的一個Demo。Portal布局可以通過UI進行配置。Widget將自動組裝,在運行期不需要編寫任何數據庫交互代碼就能夠使它們自動實現數據感知。基于Ajax與HTML的form也將從XML widget定義自動構建。XML widget定義可以從描述信息系統設計的UML模型快速生成。這個框架讓你只需關注信息系統的設計,而form和portal的系統架構將自動生成。
Wedge?????????
?????????Wedge是一個基于POJO面向組件的Web框架。它利用運行期代碼生成和習慣命名來簡化Web應用的開發。Wedge頁面模板是包含一些關鍵字的簡單xhtml文檔與頁面相對應的后臺類是沒有層次之分POJO。在運行期,wedge會生成并編譯一個第三方class,這個class與頁面模板和頁面后臺類相綁定。這個自動生成的class是在一個單獨的class loader中加載,所以當頁面模板或頁面后臺類變化時將被丟棄。Wedge在運行期能夠重新加載模板和頁面類的java源代碼,這意味著你可以隨意你頁面類的java源代碼(新增,修改,刪除或重命名方法和屬性),然后只要刷新瀏覽器就可以看到修改后的結果。
Shale?
???????????Shale是一個基于JSF的web開發框架。Shale重用了大量的Struts基礎代碼,因此可以稱Struts為它的"父"框架,但Shale是面向服務架構,它與Struts最大不同之處在于:Struts與JSF集成,而Shale則是建立在JSF之上。 Struts實質上是一個巨大的、復雜的請求處理器;而Shale則是一組可以以任何方式進行組合的服務。此外Shale加入了一些新的特性比如:
1.與Spring框架相集成可以使用Spring的依賴注入機制來創建JSF Managed bean。
2.提供一種可選的類似于Tapestry與Facelets使用純HTML來定義視圖。
3.提供測試框架,一組mock object和JUnit test case基類可以幫助測試自身框架的classe和在構建在該框架之上的應用組件。
4.提供AJAX的服務端支持。
5.Tiger擴展等。
ROMA????????????ROMA是一個完全基于POJO的Web框架。整個框架采用Ruby On Rails的設計思想,利用該框架能夠實現Ajax數據庫Web Apps的快速開發。
jbullet?
????????jbullet一個基于約定俗成沒有XML的Java開源web框架,保持簡單是它的原則,Struts是它的靈感,RubyOnRails是它的挑戰。jbullet之所以簡單是因為你所要做得只是編寫簡單的Java classe然后把剩下的交給該框架。約定俗成是驅動因素,JSP標簽庫是標準HTML標簽的一個鏡像,控制流非常流暢和明了。
jsf-compjsf-comp一組JSF組件: ?
Pushlets????????Pushlets是一個基于HTTP的發布/訂閱框架,它實現了一種能夠直接從服務端Java對象主動發送數據給瀏覽器端的HTML頁面而不需要使用Java applets或插件的機制。這個框架當前使用兩種方式實現:1.在servlet或jsp中將Javascript代碼以流的形式傳遞給一個隱藏的frame。2.采用AJAX實現。
Rhino in Spring
????????????Rhino in Spring這個項目把Rhino JavaScript解釋器與Spring框架相結合。目的是提供一個把腳本(動態)語言快速開發的優點、靈活與Java平臺和Spring框架的強大功能、高擴展性相結合的系統。這個項目發布了一個Spring MVC控制器(controller)組件用于把由Web應用程序多個web頁面生成的復雜控制流用JavaScript表示成單一結構的工作流。
2step?????????2step是一個用于開發完整Web應用程序(包括web服務)的框架。作為一個Servlet框架,它的特性有:訪問控制、logging、I18N、數據庫訪問,XML/XSL支持等,還用到Jetty,FOP和jCharts開源項目。該框架提供一個用于輔助開發的Eclipse插件。
jwebee
我的個人網站
posted on 2006-07-26 23:12
周行 閱讀(844)
評論(0) 編輯 收藏 所屬分類:
IT技術