JAVA web 框架集合

 

框架」猶如滔滔江水連綿不絕,

知道有它就好,先掌握本身工做和主流的框架;javascript

在研究好用和新框架。php

主流框架教程分享在Java幫幫-免費資源網css

其餘教程須要時間製做,會陸續分享!!!html

152款框架,你還知道其餘的嗎?前端

留言你用過的web框架java

Java開源web框架彙總mysql

1git

Struts2程序員

Struts2是一個web應用框架。它不是一個Struts的新的發佈版本,而是一個全新的框架。Struts2 是第二代基於Model-View-Controller (MVC)模型的web應用框架。 Struts2是java企業級web應用的可擴展性的框架。 它是WebWork和Struts社區合併後的產物。 這一版本的Struts2聲稱,Struts2會接近於原先版本Struts,而且會更容易使用。Struts2沒有繼承struts 1的血統,而是繼承了webwork 的血統。github

Struts2 和Struts的構建是社區開發模式的最好實踐和證實。事實上,初版本的Struts設計的第一目標就是使MVC模式應用於web程序設計。 在過去10年,Struts在更好的web應用方面所作的工做是值得確定的。在某些方面,Struts社區注意到這一框架的侷限性,但在這個活躍的社區裏,自動識別弱點和頑強不屈的精神,使得克服這些弱點是不困難的。 在深刻學習MVC運行模式並同時引入一些新的建築學方面的設計理念後,新的Struts2框架結構更清晰,使用更靈活方便。 這一新的結構包含應用邏輯的橫切面攔截器,基於註釋的配置以減小和去除XML形式的配置文件,功能強大的表達式語言,支持可更改、可重用UI組件的基於微MVC的標籤庫。Struts2 有兩方面的技術優點,一是全部的Struts2應用程序都是基於client/server HTTP交換協議,The Java Servlet API 揭示了Java Servlet只是Java API的一個很小子集,這樣咱們能夠在業務邏輯部分使用功能強大的Java 語言進行程序設計。

2

Struts

Struts是一個基於Sun J2EE平臺的MVC框架,主要是採用Servlet和JSP技術來實現的。因爲Struts能充分知足應用開發的需求,簡單易用,敏捷迅速,在過去的一年中頗受關注。Struts把Servlet、JSP、自定義標籤和信息資源(message resources)整合到一個統一的框架中,開發人員利用其進行開發時不用再本身編碼實現全套MVC模式,極大的節省了時間,因此說Struts是一個很是不錯的應用框架。【StrutsIDE:用於Struts輔助開發的一個Eclipse插件】

3

EasyJWeb

EasyJWeb是基於java技術,應用於WEB應用程序快速開發的MVC框架,框架設計構思來源於國內衆多項目實踐,框架充分借簽了當前主要流行的開源Web框架(Struts、JSF、Tapestry 、Webwork),吸收了其優勢及精華,利用Velocity做爲模板頁面引擎,是一個實現了頁面及代碼徹底分離的MVC開發框架。是一個能實現中小型Web應用系統快速開發的簡易Web框架。   經過EasyJWeb Tools提供的配套開發工具,能夠實現基於EasyJWeb框架的Web應用快速開發,包括經常使用應用軟件的代碼自生成、數據庫添刪改查(CRUD)代碼生成、自動頁面模版生成、配置文件管理等。   框架特色:   一、零配文件置支持。之前咱們每接觸一個框架,開始總都要被他的配置文件折騰一番。EasyJWeb實現零配置支持,能夠不寫一句配置文件就在框架基礎上構建你的運用。(適合小型網站系統)。   二、簡易的模板頁面設計支持:放棄使用jsp,使用簡單Velocity腳本語言做爲頁面模板。   三、頁面程序徹底分離:實現顯示頁面與程序邏輯的徹底分離,克服了傳統jsp頁面難於維護的問題。   四、基於頁面組件的框架。靈活的頁面組件配置,能夠直接經過配置文件設置字段級的事件組件。   五、快速開發支持:經過EasyJWeb Tools,能夠自動生成應用軟件模板代碼,定製並管理本身的J2EE代碼模板,代碼生成模板支持最流行的實用Java開發框架(如hibernate、Spring等)實現快速開發。

4

Tapestrt

Tapestry是一個開源的基於servlet的應用程序框架,它使用組件對象模型來建立動態的,交互的web應用。一個組件就是任意一個帶有jwcid屬性的html標記。其中jwc的意思是Java Web Component。Tapestry使得java代碼與html徹底分離,利用這個框架開發大型應用變得垂手可得。而且開發的應用很容易維護和升級。Tapestry支持本地化,其錯誤報告也很詳細。Tapestry主要利用javabean和xml技術進行開發。【Spindle:Tapestry輔助開發Eclipse插件】

5

Cocoon

Stefano Mazzocchi於1999年1月建立了Cocoon項目,將其做爲ASF之下的開放源代碼項目。Cocoon的目標是幫助分離內容格式、邏輯和對基於XML網站的管理功能。Cocoon使用XML, Extensible Stylesheet Language Transformations (XSLT), 以及 Simple API for XML (SAX) 技術,以幫助建立、部署和維護XML服務器應用程序。它支持大多數類型的數據源,包括RDBMS、LDAP和文件系統。在Eclipseh下進行開發的插件

6

Echo

Echo是爲用Java開發Web應用程序提供的一個面向對象,事件驅動的框架。使用Echo 框架來編程相似於使用Swing API來開發應用程序或applets 。

7

Turbine

Turbine是基於Servlet的框架包,也是開放源代碼Jakarta項目。目前尚未關於Turbine的大量文檔。它相似於Struts,可是有一些主要區別。突出的一點就是它並無與JSP耦合。Turbine的特色是它提供了大量可重用的組件。此框架包中包含了大量組件,可是這些組件是離散的。它彷佛應該給出更多的組件庫,可是因爲它缺乏文檔,因此很難掌握完整的體系結構。

8

MyFaces

MyFaces是JavaServer(tm) Faces(JSF) Web框架 (JSR 127)的一個實現。JavaServer(tm) Faces Web框架是一個新的實現MVC模式的規範.它能夠與Struts框架相媲美甚至的一些特性與觀念已經超過了Struts.【FacesIDE:Eclipse下的一個輔助開發插件】

9

JPublish

JPublish是一個功能強大的Web發佈系統,設計爲確保開發者角色的清晰的分離。JPublish 支持多模板引擎,包括Jakarta Apache's Velocity, FreeMarker and WebMacro。JPublish支持衆多腳本語言,包括Python, BeanShell, and JavaScript。

10

Japple

Japple是一個建造Web應用程序和服務的快速應用程序開發環境。Japple在Java2平臺和開放標準之上建造,和傳統方法相比可讓你更快、更容易、更有效地開發和部署Web應用程序。

11

Jaffa

是爲快速應用程序開發提供的一個企業Java框架。JAFFA 是一個Java Web應用程序開發框架,用基於MVC爲基礎的Web窗口部件來擴展示存的項目。

12

Anvil

Anvil是一個基於Java的爲Web程序開發的平臺,獨立或伺服式都是可部署的。它包括大量功能齊全的面向對象的編程語言。語言的一個子集也可用於一個以tag爲基礎的模板語言。全部的腳本和模板都被彙編爲Java比特代碼。

13

SiteMesh

SiteMesh 是一個網頁佈局和修飾的框架,利用它能夠將網頁的內容和頁面結構分離,以達到頁面結構共享的目的。Sitemesh是由一個基於Web頁面佈局、裝飾以及與現存Web應用整合的框架。它能幫助咱們在由大量頁面構成的項目中建立一致的頁面佈局和外觀,如一致的導航條,一致的banner,一致的版權,等等。 它不只僅能處理動態的內容,如jsp,php,asp等產生的內容,它也能處理靜態的內容,如htm的內容,使得它的內容也符合你的頁面結構的要求。甚至於它能將HTML文件象include那樣將該文件做爲一個面板的形式嵌入到別的文件中去。

14

Barracuda

Barracuda是一個HTML DOM Component + Event/Listener結構的框架。根據模板文件或配置文件生成靜態Java類,並在代碼中使用這些生成類,Barracuda須要用XMLC項目把全部的HTML或WML模板文件,靜態編譯成DOM結構的Java類,做爲頁面組件。XMLC會根據HTML元素的id定義,生成相應DOM結點的簡便操做方法。Barracuda的事件類也須要用Barracuda Event Builder工具把event.xml編譯成Java類,引入到工程中。Barracuda直接用Java類的繼承關係映射事件之間的父子層次關係。好比,ChildEvent是ParentEvent的子類。Barracuda的事件分爲兩類:Request Events(Control Events)和Response Events(View Events)。Barracuda事件處理過程相似於Windows系統消息隊列的處理機制。

15

Maverick

Maverick是一個輕量而完備的MVC Model 2框架。Maverick的Action稱做Controller。Controller只接受一個ControllerContext參數。request,response, servlet config, servelt context等輸入信息都包裝在ControllerContext裏面,並且Model也經過ControllerContext的model屬性返回。整個編程結構清晰。但因爲ControllerContext只有一個model屬性能夠傳遞數據,程序員必須把全部須要的數據都打包在一個對象裏面設置到model屬性裏。這種麻煩天然而然會致使這樣的可能用法,直接把Controller自己設置爲model,這又回到了Controller(Action)和Model一體。

16

Spring MVC

Spring MVC是結構最清晰的MVC Model 2實現。它的Action也不叫Action,而是稱作Controller;Controller接收request, response參數,而後返回ModelAndView(其中的Model不是Object類型,而是Map類型)。但在其它的Web Framework中,Action返回值通常都只是一個View Name;Model則須要經過其它的途徑(如request.attribute,Context參數,或Action自己的屬性數據)傳遞上去。

17

Shocks

Shocks 是一個開放源碼的開發框架,目的是減小 Java Servlet 應用的複雜性。Shocks 並非 MVC 模式的開發框架,而是採用下一代的體系結構,明確分開了內部各個組件的角色。該項目目前還不夠成熟,但值得關注。這裏只是簡單介紹,若是你要快速瞭解 Shocks,請閱讀 Shocks 的 FAQ,裏面講解了 Shocks 與 Struts,Webwork,Spring 的關係和差別。

18

WebCream

WebCream提供基於Java應用程序和Applet的web GUI,容許開發人員利用AWT和Swing實現GUI前端應用程序,同時自動地使HTML訪問該應用程序。

19

AppFuse

AppFuse是一個集成了衆多當前最流行開源框架與工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Ant、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL)於一身的Web開發框架。AppFuse提供了Web系統開發過程當中都須要開發的一些功能,如登錄、用戶密碼加密,用戶管理、根據不一樣的用戶能夠展示不一樣的菜單.J2EE開發者也能夠在此基礎上開發加入本身的功能模塊。利用這個框架能夠大幅度的提升開發速度。

20

VRaptor2

VRaptor2是一個MVC與IOC的Web框架.它採用了許多框的思想包括:JBoss Seam,Stripes,Webwork,Hibernate Annotations等。VRaptor2充分利用Java5註釋使得能夠經過簡單的方式來處理Web編程。你的商業邏輯類不須要與javax.servlet API聯繫,而且與其它框架相比它只須要不多配置。

21

Chrysalis

Chrysalis是一個Java Web開發框架.它有一個不一樣於大多數MVC Web框架的地方.Chrysalis的控制器類跟正常的Java類同樣有着多個方法,客戶端請求的URLs被映射到這些控制器方法.

22

Verge

Verge框架是一個開源J2EE應用程序框架徹底採用Java開發只使用到標準的J2EE APIs.這個開源項目的目的爲開發企業應用程序提供一個很是靈活和可擴展的框架.

23

WebOnSwing

WebOnSwing是一個革命性的多環境應用程序框架.它容許你建立web 應用程序並可用一樣的方式開發一個桌面程序.它不須要使用Jsp文件,特殊的標籤,XML文件, requests, posts等,全部的都是Java與直接來自圖形設計的HTML文件.這個框架使用Swing組件來構造和處理HTML頁面,並容許使用MVC設計模式.全部在Web上的工具均可以由Swing 提供.

24

RIFE

RIFE爲開發和設計Web應用程序提供了另一種途徑。它基於Java平臺構建,但它提供了全部須要的工具和AIPs用統一的風格,快速地實現全部web程序各開發角色之間的任務聯繫。RIFE被設計成在整個開發週期中徹底分離了開發角色之間的任務,每一個developer,dba和designer只需關注它們本身的任務,整個開發工做隨時均可以很容易的與其它團隊的工做相結合,使得這樣子開發出來的將是一個鬆耦合的健壯的系統。RIFE由許多標準的組件組成,它們包括: *Web程序引擎 *結合Web擴展 *多格式模板引擎選擇(html, xml, sql, java, txt, ...) *支持內容導出(好比導出爲XSLT格式) *驗證框架 *數據庫查詢構建器 *簡單的持久層 *JDBC優化與鏈接池 *可配置框架等。 用它能夠輕鬆的解決Http's無狀態鏈接問題與CGI的接口。這個框架已經成功的應用在許多網站上如:Bla-bla List,Netwerk,Caosity,Dag Allemaal,GreenEnergy等。

25

Wicket

Wicket是一個基於Java 的Web開發框架,與Struts,WebWork,Tapestry 相相似。其特色在於對Html和代碼進行了有效的分離(有利於程序員和美工的合做),基於規則的配置(減小了XML 等配置文件的使用),學習曲線較低(開發方式與C/S類似),更加易於調試(錯誤類型比較少,並且容易定位。一個結合Eclipse工具的Demo能夠引導你如何利用Wicket來發開Web應用程序。

26

Beehive

Beehive用於簡化Java 2 Platform, Enterprise Edition(J2EE)以及Web服務編程。 Apache Beehive支持如下功能: *Java Page Flow(JPF)技術,也稱爲(NetUI) *輕量級的組件框架 *基於Java Specification Request(JSR)181的Web 服務

27

JSPWidget

JSPWidget是一個Jsp框架,它提供了事件驅動,視圖狀態保留(view state retained),服務端GUI控制來使得JSP開發可以像在傳統的窗體客戶端與基於客戶端的web應用程序中同樣直觀.

28

JNex

JNex是實現MVC設計模式的純Java框架.它能夠使用三種視圖(view):Swing,HTML,和Canoo ULC.

29

WFNM

WebFlow Navigation Manager (WFNM)是一個輕量級的Web框架.它容許WebFlow定義,服務端歷史嚮導(navigation history),自動動Session清除.WFNM框架把web應用程序分離幾個WebFlow,服務端保持訪問過的頁面和WebFlow的歷史記錄,能夠動態地返回到訪問過的頁面與WebFlow.

30

OPS

OPS(Orbeon PresentationServer)是一個開源的基於J2EE平臺且是以XML爲中心的Web框架.OPS是圍繞XHTML, XForms,XSLT,XML pipelines,與Web Services進行構建的.能夠利用OPS來開發檢索,處理,表達XML數據的應用程序.不像其它流行Web框架如Struts或WebWork,它們都是基於Java對象與JSP的,OPS是基於XML文檔與XML技術.這種結構將爲處理,表達,檢索以XML爲格式的信息提供一個更好的方案,而且幾乎是在實現你表達層的時候不須要寫任何Java代碼.

31

Aurora

Aurora是一個開源的,可配置的,徹底面向對象的MVC框架。Aurora的form控制器用的是Spring框架.

32

Pustefix

Pustefix是一個web應用程序框架.它包含一個基於XML/XSLT的視圖生成系統與一個清晰MVC模式的後端系統.前臺UI能夠利用XSLT模板構建並可包含部分的HTML或XML代碼.

33

Mentawai

Mentawai是一個MVC Web框架用來簡化Web應用程序的開發.它的主要特色是小(它只解決了web開發過程當中碰到的最基本問題),簡單(它的全部配置都是用純Java代碼實現,沒有綁定額外的XML文件),靈活(整個框架容易按本身的須要進行擴展).

34

Click

Click一個高性能的J2EE Web應用程序框架適用商業Java開發者。它具備: ◆ 簡單易學, ◆ 面向頁面與組件設計, ◆ 基於事件編程模型, ◆ 自動錶單驗證, ◆ 使用Velocity模板做爲頁面視圖, ◆ 漂亮的錯誤報告功能, ◆ 使用Rico(一個開源的JavaScript庫,它提供對AJAX徹底支持並可以讓Web應用程序支持拖放操做等其它功能)來對AJAX的支持等。

35

jZonic

jZonic是一個Web應用程序框架.它由許多部分組成: ◆ 工做流引擎, ◆ 用戶管理, ◆ 訪問控制與綜合權限管理, ◆ 一個配置框架(jConfig), ◆ 支持JSP,XML,XSL,velocity,freemarker等, ◆ i18n支持, ◆ 用戶剖析(profiling), ◆ jcron(指定在某一個時間運行Jobs)等. jzForum論壇就採用這個框架開發。

36

Swingweb

Swingweb是一個web框架,它可以在一個Web容器中操做AWT/Swing應用程序並把它做爲一個純HTML/CSS/javascript的Web應用程序呈現給瀏覽器.

37

Calyxo

Calyxo一個基於MVC模式的Web框架.它爲開發真正模塊化的應用程序提供支持.它還包括支持i18n,一個靈活視圖管理器和一個強大驗證引擎等.Calyxo被分紅五個組件分別爲:1.Calyxo Base,2.Calyxo Control,3.Calyxo Panels,4.Calyxo Forms,5.Calyxo Struts(這個組件的目的是讓Calyxo的其它組件可結合到Struts框架中,好比Calyxo Panels與Calyxo Forms可被用來替代Struts Tiles與Struts Validator在Struts中的使用).

38

jWic

jWic是一個Java框架用於開發基於事件的Web應用程序.它可以讓你的應用程序脫離與URLs和頁面流(page flows)的聯繫.

39

JVC

JVC(Java View Control) Java(視圖-控制)開發框架的目的是構建一個快速開發、可維護的、穩定的web開發框架,並開放源代碼,互相促進開發技術。 目前比較流行的web開發框架有WebWork、Struts、Spring,這幾個都是很是好的開發框架,都能實現MVC模式.參考上述幾個框架的思想,開發簡化了的視圖-控制框架,弱化了模型層,爲何要弱化模型層,這是由於每每在模型中大部分是重複的工做。 項目主要的特色是 1.開發簡單快速:大部分開發不須要寫javabean,系統自帶的Action能知足90%需求,只須要編寫page文件(控制文件)與視圖jsp。 2.提供了Web系統開發過程當中都須要開發的通用用戶權限管理:能夠控制角色對每一個Command的訪問權 3.提供功能強大的驗證框架:使用表達式編寫驗證公式,支持全部邏輯表達式,而且前臺jsp(生成javascript腳本)和後臺Servlet(提交到後臺的request參數)都可以調用。 4.可維護性:通常修改了數據庫表須要同時修改M、V,須要從新編譯,雖然簡單,但帶來了繁瑣的操做,並且有可能引發其餘錯誤,而jvc框架弱化了M,不須要編寫對象關係映射的類,而是用命名規範使得對於大部分的修改只是須要修改V(jsp頁面)。 5.自定義Action可獨立調試,通常Action因爲須要從requset獲得參數而沒法進行獨立調試,而jvc框架借鑑了WebWork方法把HTTP請求的封裝爲ActionContent類,除了交互和使用上的方便外,實現了每每開發web比較困難的獨立調試。而且爲下一步升級到Web+EJB或其餘分佈式架構作好準備。

40

Java Server Faces(JSF)

JavaServer(TM) Faces技術簡化了JavaServer應用程序用戶界面的開發.各類技術水平的開發者都可以快速建立web應用程序經過在一個頁面中裝配一些可重複使用UI組件;並可把這些組件與應用程序的數據源鏈接起來;也可把客戶端產生的事件與服務端事件處理者鏈接起來.這個項目是Sun對JSF技術規範的最完整實現.

41

XMoon

XMoon擴展自Jakarta Struts框架用於開發處理基於XML或一些腳本語言(如: BeanShell, JRuby, JudoScript, Jython,Rhino)的Web應用程序.它還提供一個用於展現該框架寵物店Demo.

42

Stripes

Stripes是一個視圖框架用於利用最新的Java技術來構建Web應用程序.它具備如下特色:不須要對每一page/action進行映射配置(ActionBeans將自動被發現,它利用註釋進行配置),強大的綁定引擎用於構建複雜並脫離請求參數(request parameter)的web對象,易於使用並可本地化的驗證與類型轉換系統.可重複使用ActionBean做爲視圖幫助類.支持一個form對應多個事件.透明的文件上傳能力.支持持續開發(好比在構思你的ActionBean以前能夠先構建與測試JSP)等.

43

PIFF/Crud

RIFE/Crud是RIFE Web框架的一個擴展模塊,它能夠用給定的POJOs自動生成CRUD web應用程序。它沒有生成任何文件全部的事件都是在運行期進行.利用RIFE提供的 site-structure能夠把它與你應用程序的數據流與邏輯流相結合.

44

Simple Web Framework

Simple Web Framework (SWF)是一個基於事件的web框架.它很適合於那些想要開發胖客戶端Web應用程序但又不想轉向JSF的Struts開發人員。SWF跟Struts同樣也是構建在Jakarta commons基礎之上,但使用一個不一樣的request processor。SWF事件模型支持基於XmlHttpRequest的事件提交。

45

wingS

wingS是一個基於Java Servlets的Web框架,它採用相似於Swing API的MVC模式和麪向事件驅動的設計原理。它利用到Swing的模型(models),事件(events),和事件監聽。像在Swing中,組件被排列在一個具備分層次的容器中,而其中的root容器被掛在frame中。wingS也支持AJAX。

46

JBlooming

JBlooming是一個Java Web開發框架,這個框架儘量得使用Java API和麪向對象的思想來設計接口,因此沒有使用標籤。而是使用面向對象的Jsp模板技術。JBlooming主要的特色包括:靈活和強大:這個框架可以讓你在任何狀況下均可以使用java/jsp/html/js (包括AJAX)技術。 一組成熟,漂亮的html組件而且能夠很方便地切換到其它皮膚。提供自身校驗功能。不須要使用XML,全部的配置都放在JSP中。這個框架還易於使用,並且確實可以提升咱們的開發效率和程序的可維護性。

47

GenAndRun

GenAndRun(Generate And Run)是一個表格驅動開發工具,它與Ruby on Rails(RoR)框架相相似。GenAndRun項目的主要目標是讓Java Web開發簡單化,利用這個框架來開發讓咱們只需關注應用程序的商業邏輯和界面,讓GenAndRun生成大部份項目所須要的ORM與controller代碼。GenAndRun當前使用Spring做爲IOC引擎,IBatis做爲ORM引擎,JSP/JSTL做爲view。在未來新的版本中將會新增對現存其它技術的支持。

48

Sails

Sails是一個動態,開源的Web框架,採用測試驅動進行設計。它的配置,urls到Actions的映射與處理後轉向的頁面都是採用約定俗成的方式。Sails包括: 反轉控制器Rigging, 模板語言Viento, 框架的核心Sails, Eclipse平臺上的開發插件Shipyard, 範例程序Dock。

49

Frame2

Frame2是一個能夠代替Struts來開發Web應用程序的框架。它也支持web services在一個MVC上下文(context)中。Frame2還提供一個在Eclipse上進行開發的插件。

50

Helma

Helma是一個用來開發快速,穩定Web應用程序的開源框架。它使用JavaScript 來做爲服務端腳本環境,從而能夠除去編譯週期。Helma是應用程序對象到數據庫表格映射零代碼化與簡單化的先驅,此外一個內嵌的面向對象數據庫能夠完成未映射對象數據的自動持久化。Helma已被成功運用於許多大流量網站的開發如:antville.org,twoday.net,和blogger.de等網站。

51

Brill Framework

這是一個讓你只需用Java與XHTML技術就可以開發交互式Web站點的開源框架。它目的就是開發出一個簡單,支持WYSIWYG頁面編輯而不須要編寫Java代碼或在JSP頁中使用特殊標籤的框架。開發基於Java的Web應用程序一般是使用MVC設計模式和JSP技術,而Brill Framework雖然也使用MVC設計模式但在頁面技術上它使用XHTML來代替JSP。XHTML的使用可以提升開發Web應用程序的效率與質量,從而減小了成本。

52

XX Framework

XX Framework是一個可配置,以XML爲核心實現MVC開發模式的Web框架。這個框架可以讓HTML表單直接映射到數據庫字段來顯示或更新數據而不須要編寫額外的代碼。它用XML文件進行配置並用XSL來顯示。一些開源的工具也被運用到其中好比Hibernate和Castor。XX Framework的優點在於: 1.使用很是簡單。 2.圍繞一些Web標準(包括:J2EE, XHTML,XML,XSL,CSS)進行構建。 3.內置用於優化性能可配置的數據緩存和線程池功能。 4.與Web服務/本地Java class相結合。 5.使用一個基於"Portal"的方式來進行頁面設置,以易於功能的劃分。

53

Equinox

Equinox是AppFuse的一個輕量級版本。Equinox使用Spring MVC與Hibernate做爲默認實現(數據庫爲:PostgreSQL)。可是你能夠把Web框架改爲JSF, Struts,Tapestry或WebWork。也能夠把持久層框改爲iBATIS,JDO(JPOX),Spring JDBC或OJB()。同時支持Ant和Maven2進行構建與測試。AppFuse與Equinox的不一樣之處在於AppFuse有如下特性: 1.使用Acegi Security進行受權和認證; 2.用戶管理; 3.爲基於增刪改查(CRUD)的應用程序自動生成代碼; 4.文件上傳;

54

Facelets

Facelets是一種表現層/視圖技術,它使用Tapestry用戶所熟悉的概念來構建JSF組件樹。

55

Millstone

Millstone是一個Web用戶界面組件包。用戶界面徹底採用面向對象服務端編程方式實現。利用這個包你就能夠開發出高質量基於Web的UI而不須要關心XHTML,CSS,JavaScript,瀏覽器兼容等問題。可通其提供的一個在線Demo來了解各個UI組件的特性。Millstone還提供一個可在Eclipse平臺上建立和運行Millstone項目的插件。

56

SOFIA

SOFIA是爲J2EE提供的一個快速應用程序開發工具。它集成了各類優秀的Java框架來爲開發高質量的數據庫驅動的Web應用程序提供一個解決方案。

57

SpringSide

SpringSide--Pragmatic Enterprise Application KickStart and Common Library Stack,這麼長的一個名字下來,不用解釋你們都知道是作什麼的了----以Spring Framework爲core,提供一個Pragmatic的企業應用開發基礎和最佳實踐展現。 1.項目架構: 主要包含4部分,從腳往上掃是: 1).Common Library棧。提供一個經測試的、版本般配的Library及配置文件的組合。 2).Spring大叔一時沒管到的少許必要的基類、utils類和glue code。 3).以一個Amazon式的網上書店,演示企業應用中各個主題的Best Pratice,各類框架類庫組合的Config file&Sample code。 4).開發指南文檔。 此部重要性不亞於上面三部,涉及企業應用開發的方方面面,將以獨立版本號單獨發行。 2.Featrue List mvc、orm、web service、jms、定時任務、全文索引、report & BI report、規則引擎、動態語言、安全權限管理、ajax、cache、logging、i18n....

58

Groovy on Rails(Grails)

Grails是一套用於快速開發Web應用系統的框架,基於Groovy動態語言。並構建在開源技術如:Spring,Hibernate和SiteMesh之上。它提供一個相似於Rails的平臺能夠無縫與Java平臺相集成使得開發者能利用當前在Java和JDK方面的投入。Grails提供一個完整的開發平臺包括內置Jetty web服務器並提供了一些強大的功能好比簡單的對象關係映射(ORM),自動從新加載應用程序,爲CRUD(新增,查詢,修改,刪除)操做提供代碼自動生成支架(scaffolding)。此外Grails還提供了一些在Java中慣用的語法包括:運用AOP思想的攔截器,動態標籤庫,JSP和GSP(Groovy Servers Pages)支持。

59

Waffle

Waffle是一個相似於Rails的Web框架支持基於POJO的Actions,依賴注入,而且它沒有依賴任何XML配置文件。採用waffle開發應用程序將比其它Web框架更加簡單,並且易於測試。利用Waffle框架來開發Web應用程序只須要知道三件事情: *.Actions - 在Waffle框架中的action不須要繼承或實現任何特定的類或接口。由於一個action就是一個(Pojo)。 *.Events - 在Waffle框架中一個事件對應Action類中的一個方法。使用任何方法能夠無論它的標記(signature)或返回類型。Waffle將會根據事件的返回做出不一樣的響應。 *.Registrar - Registrar是你要註冊Actions與其它公共組件的地方而當前大多數web框架須要你的應用程序建立特定的XML文件來作這些事件。使用Waffle可讓你把更多的時間發在開發程序邏輯上。 還能夠很方便地擴展Waffle來添加對AJAX的支持。

60

Tasian

使用Tasian框架能夠使得J2EE的開發人員能夠開發出相似桌面應用具備豐富UI的B/S應用程序,具備高性能、友好、快捷的特色。該框架2.0版本以前主要是面向企業級應用程序的開發,而非網站應用,該框架將會在3.0版融入Web開放接口,以知足網站應用的開發,固然這並非說Tasian固然的版本不能開發出相似的網站應用,實際上經過Tasian當前的API仍然能作出相似網站的應用。同時,Tasian也將慢慢向J2ee等主流開放框架靠近,使得用戶在使用時沒必要擔憂其之後的擴展性。 Tasian框架提供給開發人員一個面向對象的、事件驅動的Web應用開發的體系架構,它使得開發人員不須要考慮以頁面爲中心的應用程序,他們只需象開發C/S應用程序同樣關心組件及應用邏輯,而沒必要關心HTML、HTTP以JavaScript等網絡技術,全部的這些都在框架內部爲開發人員實現了。Tasian目前也提供了一個很是簡單的IDE開發環境,是一個Eclipse插件,也是屬於開源代碼,在必定程度上提升了開發效率。 Tasian框架是一個輕量級的框架,在設計之初就考慮到Tasian將會運用於網站,將會有大量的用戶訪問,因此,它不會佔用服務器資源,徹底是客戶端狀態保存機制,而沒有采用Session機制。

61

Aranea

Aranea是一個開源,面向組件,事件驅動的Java MVC Web框架。它提供一種通用簡單的方式來構建Web應用程序組件,複用自義定或通常的GUI邏輯,擴展該框架。Aranea強調必須使用POJOs面嚮對象的技術,而且提供一個Jsp標籤庫來幫助開發web GUI界面。

62

2step

2step是一個用於開發完整Web應用程序(包括web服務)的框架。做爲一個Servlet框架,它的特性有:訪問控制、logging、I18N、數據庫訪問,XML/XSL支持等,還用到Jetty,FOP和jCharts開源項目。該框架提供一個用於輔助開發的Eclipse插件。

63

Rhino in Spring

Rhino in Spring這個項目把Rhino JavaScript解釋器與Spring框架相結合。目的是提供一個把腳本(動態)語言快速開發的優勢、靈活與Java平臺和Spring框架的強大功能、高擴展性相結合的系統。這個項目發佈了一個Spring MVC控制器(controller)組件用於把由Web應用程序多個web頁面生成的複雜控制流用JavaScript表示成單一結構的工做流。

64

Pushlets

Pushlets是一個基於HTTP的發佈/訂閱框架,它實現了一種可以直接從服務端Java對象主動發送數據給瀏覽器端的HTML頁面而不須要使用Java applets或插件的機制。這個框架當前使用兩種方式實現:1.在servlet或jsp中將Javascript代碼以流的形式傳遞給一個隱藏的frame。2.採用AJAX實現。

65

jsf-comp

jsf-comp一組JSF組件:

Chart Creator

用於在JSF頁面中操做JFreeChart

Client Validators

用於JSF客戶端校驗

Acegi-JSF

JSF版的acegi標籤

Excel Creator

用於導出數據到excel中

OnLoad

經過頁面訪問代替form提交來運行JSF Action

66

jbullet

jbullet一個基於約定俗成沒有XML的Java開源web框架,保持簡單是它的原則,Struts是它的靈感,RubyOnRails是它的挑戰。jbullet之因此簡單是由於你所要作得只是編寫簡單的Java classe而後把剩下的交給該框架。約定俗成是驅動因素,JSP標籤庫是標準HTML標籤的一個鏡像,控制流很是流暢和明瞭。

67

POMA

ROMA是一個徹底基於POJO的Web框架。整個框架採用Ruby On Rails的設計思想,利用該框架可以實現Ajax數據庫Web Apps的快速開發。

68

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擴展等。

69

Wicket Stuff

這是一個把第三方組件集成到Wicket Web組件框架中的開源項目。這個項目當前提供的組件包括:

  • Dojo Toolkit AJAX components integration
  • Hibernate(2.1 and 3) components
  • fValidate integration
  • Groovy integration components
  • Velocity Panel
  • Freemarker integration
  • JasperReports integration
  • TinyMCE WYSIWYG JavaScript editor integration
  • Yahoo UI components integration

70

Wedge

Wedge是一個基於POJO面向組件的Web框架。它利用運行期代碼生成和習慣命名來簡化Web應用的開發。Wedge頁面模板是包含一些關鍵字的簡單xhtml文檔與頁面相對應的後臺類是沒有層次之分POJO。在運行期,wedge會生成並編譯一個第三方class,這個class與頁面模板和頁面後臺類相綁定。這個自動生成的class是在一個單獨的class loader中加載,因此當頁面模板或頁面後臺類變化時將被丟棄。Wedge在運行期可以從新加載模板和頁面類的java源代碼,這意味着你能夠隨意你頁面類的java源代碼(新增,修改,刪除或重命名方法和屬性),而後只要刷新瀏覽器就能夠看到修改後的結果。

71

OpenBlueLab

OpenBlueLab是一個用於構建Web2.0 Portal系統的快速開發框架。其主頁就是採用該框架開發的一個Demo。Portal佈局能夠經過UI進行配置。Widget將自動組裝,在運行期不須要編寫任何數據庫交互代碼就可以使它們自動實現數據感知。基於Ajax與HTML的form也將從XML widget定義自動構建。XML widget定義能夠從描述信息系統設計的UML模型快速生成。這個框架讓你只需關注信息系統的設計,而form和portal的系統架構將自動生成。

72

ztemplates

ztemplates這是一個基於Java1.5的Web框架並使用反射,註釋和泛型來確保你能夠基於POJO進行開發。這意味着你不須要實現任何接口或繼承特殊的class。它的特色包括: 1.不須要XML配置文件,除了web.xml。 2.Type safety:在須要的地方使用泛型(generics)。 3.Url safety:Url用Java編碼建立而不是在模板中,因此你不可能建立壞掉的連接。 4.靈活性:支持不一樣的表現層引擎如:velocity,jsp等。 5.支持i18n,form校驗(利用Ajax和http),數據綁定。 6.提供安全機制,模板引擎。 7.此外ztemplates還實現了一些可擴展的Web UI組件如tree和tabpane等。

73

qwicket

qwicket:採用wicket+spring+hibernate搭建一個Web應用基礎框架。相似於appfuse。

74

Apusic OperaMasks

Apusic OperaMasks包括一個提供原生Ajax支持的JSF引擎,以及在此引擎上開發的富客戶端組件(Rich Component)。Apusic OperaMasks在引擎級別提供對Ajax的良好支持,並提供一組功能豐富的UI組件,旨在下降Web開發的複雜度,真正使Web開發變得輕鬆起來。 Apusic OperaMasks提供如下的功能特性:

  • 標準兼容的JSF引擎

不依賴於應用服務器,在Servlet 2.5兼容的容器中均能運行。

  • 容器級別Ajax支持

在引擎級別對Ajax予以支持,實現了對Ajax的無縫集成。

  • Annotation形式的ManagedBean聲明

無須維護faces-config.xml文件,在POJO類上聲明 @ManagedBean 便可定義一個ManagedBean,使得開發更加快捷。

  • 統一的資源和皮膚管理

依賴於特有的資源管理機制,Apusic OperaMasks的皮膚管理獨立於應用以外,靈活並具有很是好的擴展能力。

  • 豐富的UI組件

提供一組功能豐富的UI組件(Rich Components),包括BorderLayout,Menu,Tree,DataGrid,DataView,ComboBox,DateFiled,CaculatorField等。

75

jxyz

pojo的mvc框架,使用java註解,使用ognl傳輸上下文,使用hivemind作ioc容器,使用spring簡化hibernate操做,使用泛型來減小重複代碼。 有如下幾個特色。 1.Pojo。任何一個java類均可以作Action(logic),爲了改造如今經常使用的ssh,tsh,wsh框架成sh,支持spring bean作Action(logic) 2.0配置,根據命名規範來查找Action類和view 3.和web環境鬆耦合,從理論上講能夠用在swing裏 4.支持tdd開發,框架自己就是以tdd開發方式開發 5.代碼少,通常mvc須要5個類,xyz只要3個,還能夠經過GenericDAO,GenericLogic來減小重複代碼 6.對開發者來講,一切實現均可以本身定製,因爲hivemind支持迭代開

76

Strecks

針對Java 5.0開發人員設計,擴展自Struts的一個Web框架。它的特色包括:POJO action,註釋式校驗,數據綁定和轉換,依賴注入,攔截器等。

77

Ruby on Spring

Ruby on Spring是一個採用Ruby on Rails的思想與優勢,集成JRuby動態語言與Spring框架而開發的開源項目。基於MIT license發佈。

78

Open-jACOB

Open-jACOB是一個Web框架用於開發基於AJAX,數據庫驅動,跨瀏覽器的Web應用程序。該框架設計成一個基於Eclipse的插件,能夠利用該插件設計數據庫,設計UI,部署/測試應用程序等。具體用法可查看其提供的一個Flash Demo。

79

SpringXT

SpringXT是Spring框架的一個擴展用於開發richer domain models與richer user interfaces的應用程序。採用Domain Driven Design設計原則。爲此SpringXT提供兩個框架SpringXT Modeling Framework:提供一些組件來開發rich domain model(它集中了全部業務邏輯,規則和約束,徹底獨立於應用程序的其它部分)並可以讓它們與其它應用軟件分層"優雅"結合。SpringXT Ajax Framework:一個徹底與Spring MVC集成在一塊兒,基於事件的Ajax框架。

80

Frails

Frails是基於JSF上的一個開發效率和RoR能夠向媲美的Java Web框架。 Frails的特性以下:

  • Frails 讓開發者使用約定(習慣)和註解(annotations)來省略在 faces-config.xml 文件中 managed-bean 和 navigation-rule的配置.
  • Frails 提供一個更簡單的方法來使用 Faces API.
  • Frails 重定向非 faces 請求爲一個 faces 請求,這樣能夠避免由於URL輸入的疏忽致使的異常.
  • Frails 提供一些預約義的 Managed Bean 基類讓開發者擴展 .
  • Frails 可讓開發者在 Managed Bean 中使用註解(Annotation)來支持AOP功能 ,如 函數攔截(method interception).
  • Frails 提供 Managed Bean 屬性的injection 和 outjection
  • Frails 中的Hibernate GenericDao 對象提供了基本的 CRUD 函數 和 其餘一些有用(經常使用)的數據訪問函數.
  • Frails 還提供了一些有用的註解(annotations)來簡化JSF的開發.
  • Frails 徹底支持 jsf 1.1 和 jsf 1.2 規範,而且能夠自動的探測你使用的版本.
  • Frails 提供了對action Method 和 Listener 函數的加強,在這些函數中如今你能夠傳遞參數了.

81

jZeno

jZeno是一個用於開發web2.0應用程序的開源Java full-stack框架。相似於GWT,jZeno也可以把Java開發轉換成Javascript/HTML/CSS。jZeno構建在Hibernate和Echo之上。

82

Mantis

Mantis是一個基於Java的小型MVC Web框架,經過Mantis,您能夠快速開發一個Web系統,它具備如下特色:

  • 封裝數據庫訪問,事務處理,鏈接池集成,封裝分頁控制
  • 封裝數據庫緩存和刷新機
  • 基於URL反射的方法調用,避免複雜的XML配置;
  • 簡化配置文件,只須要一個配置文件便可完成web應用的靈活配置
  • 完善的例外處理,超時處理
  • 內置Mail, JfreeChart, JspReport及豐富的工具類
  • 完善的認證受權機制和日誌處理支持國際化
  • 內置自定義標籤和豐富的js簡話頁面的開發
  • 內置豐富的js
  • 內置Ajax

83

JWC

Java Web Components該項目當前開發了一些用於GWT應用程序的組件包括:GWT - Components(用於替換和加強GWT標準組件),GWT - TinyMCE (用於集成TinyMCE DHTML在線編輯器),GWT - FCK Editor (用於集成FCK Editor DHTML在線編輯器),GWT - Spring集成組件。

84

Apache MyFaces Trinidad

Apache MyFaces Trinidad是一個基於部分Oracle's ADF Faces構建的JSF1.2組件庫。

85

WebGalileo Faces

WebGalileo Faces是一組加入Ajax技術的JSF組件。組件包括:容器(container),面板(panel),左右列表(dual list),菜單(menu),日期和時間組件,流程圖組件(flow chart)。WebGalileo Faces已經內建支持多種IDE包括Sun Java Studio Creator,IBM Rational Application Developer,Oracle JDeveloper和Eclipse。

86

Hocate

Hocate web framework是一套給予java的快速高效、構建web應用程序的框架,在框架的設計過程當中,框架設計構思來源於國內衆多項目實踐,研究了(struts、jsf、Myface等)著名成熟的框架並繼承了他們的優勢,但也迴避了些許他們弱點,利用FreeMarker做爲頁面模版解析引擎,實現一個頁面及代碼徹底分離的簡化的MVC開發框架。旨在構建一個能實現高效Web應用系統快速開發的簡易Web框架

87

GWT Pleso Framework

GWT Pleso Framework是一個基於GWT的Web框架,主要用於開發AJAX數據庫Web應用程序。它可以根據你的業務邏輯類自動生成用戶界面。

88

Apache Tiles

Apache Tiles是一個視圖框架基於「Composite View」設計模式構建,它可以把頁面分割成可複用的子頁面。Apache Tiles本來是Apache Struts的一部分,可是如今它已脫離自成一個完整獨立的框架。此外它還可以兼容JSR-168 portlet。Struts2已經有一個基於Tiles2.0.4(最新版本爲2.0.5)的插件。在不久的未來Apache Tiles還將發佈用於Apache Shale/MyFaces的插件。

89

krank

krank是一個Java CRUD和Validation框架。校驗模塊可以利用Java註釋(annotations)、property文件、XML文件或數據庫表實現服務器端校驗、Ajax校驗或只有JavaScript校驗。當前該模塊可以集成到JSF、Spring MVC和Spring Webflow框架中使用。CRUD框架(包括新增/修改/讀取/刪除/過濾/排序)支持基於JPA的DAO對象。雖然默認只支持JPA,可是利用該框架提供的接口可以很容易實現對其它框架的支持如:Hibernate、Batis等。

90

LazyJ

LazyJ是一個Java Web應用程序開發框架。包括:

  • 一個很是快的模板引擎,該引擎可以緩自動存編譯過的模板。
  • 提供響應緩存和數據緩存引擎。
  • 封裝經常使用的數據庫操做功能,包括鏈接池。
  • 基於數據庫的Session保存機制。
  • 提供便捷的文件上傳功能。
  • 提供通知/提醒框架,已經實現利用email和Yahoo! Messenger來發送通知。
  • 提供一組與數據庫綁定的HTML控件。

91

Gwittir

Gwittir項目爲開發基於GWT的應用程序提供一組代碼生成器,基礎框架,工具類和一個MVC框架。

92

jWebApp

jWebApp是一個基於Servlet的MVC框架。jWebApp是當前最易於學習與使用的web框架。支持URI映射,服務器端Ajax支持和服務器端REST(RESTful web services)支持。此外一個很是高效的request緩存算法可以讓jWebApp具備較高的運行速度。

93

WaveMaker

WaveMaker是一個Web應用程序WYSIWYG構建工具。它可以建立基於Dojo Ajax widget,Spring與Hibernate的應用程序。

94

IWebMvc

IWebMvc爲開發基於Spring/Hibernate/dojo和DWR的Web應用程序提供一個基礎框架。此外IWebMvc還支持Groovy,Spring Webflow2.0,Jasper Reports/Dynamic Jasper,多文件上傳(包括一個特殊的控件)。提供Image Gallery控件,投票控件。

95

SeamWebAppGen

SeamWebAppGen是一個Web應用程序生成器。它生成的應用程序基於JSF2.1,JBoss SEAM,RichFaces和EJB3等技術並可以部署在JBoss Application Server (4.x)上。

96

rapid-framework

一個相似ruby on rails的java web快速開發腳手架,本着不重複發明輪子的原則,框架只是將零散的struts(struts2)+spring+hibernate各個組件組裝好在一塊兒,並對struts及struts2進行改造,提供零配置編程,並內置一個強大的代碼生成器及模板文件,能夠生成java的hibernat model,dao,manager,struts+struts2 action類,能夠生成jsp的增刪改查及列表頁面。

整個項目借鑑了ruby on rails,appfuse,springside

框架特性:

  • 內置一個基於數據庫的代碼生成器rapid-generator,極易進行二次開發
  • struts1,struts2的零配置
  • spring集成及增強,自動搜索hibernate的entity annotation class
  • 集成動態構造sql的工具:rapid-xsqlbuilder
  • 集成javascript表單驗證:rapid-validation
  • 集成extremeTable分頁組件,並簡單擴展顯示pageNumber
  • 集成DBUnit及spring對數據庫測試的支持
  • 內置的分頁查詢PageInfo接口
  • Java日期轉換的特殊處理,與My97DatePicker集成
  • 內置最精簡的ant構建腳本,簡單修改便可使用
  • 公共類庫友好的包名javacommon
  • 整個項目儘可能作到最小集,無需刪除任何資源,拿來便可使用.
  • 友好的MIT-Licence

97

mesir

組合各類經常使用的開源框架,並儘可能簡化這些框架的用法。爲開發Web應用程序提供基礎的框架。幫助開發人員快速有效的創建Web應用項目。當前組合的開源框架包括:

  • JSF, Facelets
  • MyFaces Orchestra
  • Spring
  • Hibernate (Search, Validator)
  • Jboss Envers
  • CXF, JAX-WS
  • Joda Time (with Hibernate persistency support)
  • Selenium Tests
  • slf4j、logback

98

Suco

Suco是一個可以讓GWT客戶端實現代碼簡潔與模塊化的框架。Suco主要關注兩個方面:一.保持系統的模塊化(使用IoC模式實現)。二.提供一個簡單而且可擴展的publisher/subscriber(Event/Listener)機制。Suco IoC徹底基於Google's Guice IoC框架的思想,擁有Container、Provider、Factory和Scope等概念。

99

PrimeFaces

PrimeFaces是一個用於提升JSF Web應用程序開發效率的開源類庫。主要由三個模塊組成:

  • UI Components:PrimeFaces UI模塊提供了擁有Rich Web用戶體驗的各類JSF組件。PrimeFaces使用Yahoo UI庫作爲默認的客戶端框架。PrimeFaces提供的JSF組件可以處理JavaScript Rendering和如何在服務器端與JSF集成。PrimeFaces UI組件包括:HtmlEditor、ImageCropper、Dialog、AutoComplete、Flash based Chart等。並支持經過Ajax更新頁面。
  • Optimus模塊提供簡化JSF開發的解決方案。Optimus提供基於Google Guice IOC容器的註釋來代替XML配置和一個XML-less Navigation Handler可以讓你減小基於XML配置JSF Navigation的須要。此外Optimus還支持利用JPA實現數據持久化;將DataTable的內容導出成Excel與PDF。支持安全擴展。
  • FacesTrace模塊提供跟蹤JSF Web應用程序的各類工具包括:JSF LifeCycle可視化查看器;性能跟蹤器; Log4J適配器;FacesMessage監聽器;組件樹可視化查看器。

100

AribaWeb

AribaWeb是一個基於組件的Web應用快速開發框架,用於建立基於Ajax的web應用程序。AribaWeb集成了開發數據庫應用所需的所有功能,提供豐富的Rich Widgets(forms、pivot、tables、charts、rich text editors等)而且與一個ORM數據庫框相綁定。AribaWeb開發的Web應用支持部署在不一樣的J2EE運行環境中。

101

Jspresso

Jspresso是一個full-stack Java RIA框架,用於開發N層分佈式desktop-like應用程序。基於Jspresso開發的應用程序能夠部署成Adobe's Flex、Ajax (WingS)、ULC與Swing,而且是不須要改動任何GUI代碼。

102

Joindesk

Joindesk是一個創建在Ext JS, Velocity and Spring基礎上的J2EE Web應用框架。 Joindesk可以加速使用Ext組件的J2EE Web應用開發。不用編寫一句JavaScript就能夠在Java代碼中直接響應來自Ext組件的事件。你在處理AJAX請求時也沒必要關心JSON或XML數據格式。 使用Joindesk框架開發Web應用UI交互,就像使用VB/VC開發桌面應用UI交互同樣方便快捷。 在Joindesk中,相關的表單定義(JS)、頁面模板(HTML)和頁面處理邏輯(class)能夠打包在一個文件中發佈,使web應用模塊化開發部署更方便。

103

GWTruts

GWTruts是一個易於使用的GWT MVC和依賴注入框架。它將GWT module分割成view、controller和validation等部分相似於傳統Web MVC框架如Apache Struts。GWTruts使用XML配置文件來配置視圖,控制器和其它屬性。此外GWTruts還提供一個依賴注入機制相似於Spring可以讓你自由定製你的視圖和控制器。GWTruts徹底採用GWT開發,所以可以很好地與任意GWT插件/擴展結合使用。

104

Nutz

Nutz是一組輕巧的開源框架,內容涵蓋了: 1.數據持久化(Data Persistence) 2.反轉控制(Ioc) 3.Web框架(MVC) Nutz全部的功能均不依賴第三方的jar包,上面三個部分能夠獨立使用。

105

JQuery4jsf

JQuery4jsf是一個開源JSF組件庫。這些組件基於jQuery框架開發,當前可用的組件包括:

  • Accordion Panel
  • Datepicker
  • Dialog
  • Progressbar
  • Slider
  • Tabs
  • Draggable
  • Draggable
  • Resizable
  • Effect
  • Autocomplete
  • Carousel。

106

vaadin

vaadin是一個用於建立胖客戶端Web應用程序的Java框架。擁有基於GWT實現的各類控件,全部代碼所有采用純Java實現,不須要編寫任何JavaScript代碼,沒有複雜的配置,快速,易於擴展和維護。

107

etmvc

etmvc是基於Java技術,爲WEB開發提供的一套簡易MVC框架。簡易但不簡單,其設計和實現借鑑業界衆多的優秀框架,如struts,spring mvc,ror,grails等,力圖爲Java開發人員提供一套高效的開發框架。

  • 基於java技術開發,繼承其強大、穩定、安全、高效、跨平臺等多方面的優勢
  • 約定優於配置,免除開發過程當中的配置之苦
  • 具備良好的自我擴展能力
  • 易於同spring等IOC框架進行集成
  • 從實用的角度出發,精益求精,從實際開發經驗中提取有用的模型
  • 設計專門同EXTJS等框架進行整合的機制

108

Induction

Induction是一個強大,高性能的Java MVC Web應用開發框架。支持動態從新加載。基於類型的依賴注入。模型、視圖、控制器之間的依賴分析。Induction的目標是簡化開發複雜、高性能、可維護的Web應用。

109

Play Framework

Play Framework是一個功能完整的Java Web開發框架。採用RESTful架構設計,簡便靈活。Play Framework使用MVC模式做爲Web層,集成Hibernate管理持久層,Play Framework還使用一個基於Groovy的模板引擎。

  • Play Framework讓開發者無須從新編譯打包發佈應用,便可看到修改後的效果,方便開發人員調試應用。
  • Play Framework採用了無狀態模型,是一個真正意義上的「無共享」系統,可以在多個服務器上部署多個Play Framework的實例,全部實例都不會互相干擾。
  • Play Framework採用了Groovy做爲模板引擎,讓表示層真正作到了開發高效簡潔
  • Play Framework擁有精確的錯誤定位機制,當錯誤發生的時候,能夠精確的定位到錯誤代碼的位置。
  • Play Framework的速度很快,啓動快,運行的速度也十分快。

110

ExpressWind

ExpressWind是一個REST風格的MVC Web開發框架,與傳統MVC框架(如Struts、WebWork)徹底不同。支持直觀友好的URL如'/blog/display/20090909'這樣更利於搜索引擎收錄。可以在Java類方法中定義HTTP請求。支持用攔截器來處理事務、日誌和其它事情。支持用ExceptionHandler來集中處理和控制異常。支持文件上傳。

111

Rose

Rose是由人人網提供的、基於Servlet規範、Spring「規範」的開放源代碼WEB開發框架。 Rose是面向使用Java開發的同仁們的。Rose 提供的各類特性和約束慣例,目的就是爲了使您在可以輕鬆地開發web程序。若是您以爲Grails的想法很好,您沒必要轉向它,Rose能夠給您這種感受,同時基於您對Java的熟悉,您又能更好地控制Rose。 咱們但願Rose對各類技術的整合和規範,能使您擺脫猶豫,擺脫選擇的困難,規避沒有經驗帶來的開發風險。Rose不只整合技術,同時還強調最佳實踐,甚至包括名稱規範。咱們不只僅只是提供技術,咱們還會引導您應該如何使用好技術。 Rose規範了對Spring的使用,雖然大部分時間以內,您可能只是使用 @Autowired 便可,大多數時候的確這樣也就夠了。但 Rose 也容許您放置applicationContext-xxx.xml文件來擴展Rose。

112

Simpleframework

Simpleframework是基於 Intercepting-Filter模式和MVC2模式(咱們稱之爲:後處理模式,After-Processing Pattern),基於「應用即組件,組件即應用(Application are components,component can be a application)」理念採用Java 技術實現的Web應用級框架。

其核心價值在於提供了以聲明方式來描述組件行爲的機制,該機制有效整合了客戶端的UI視圖、處理邏輯、存取訪問控制策略、校驗規則,以及服務器端的數據持久化、分佈式緩存、業務規則等的一體化應用

提供一套完整的Web UI組件來簡化和加快AJAX/富Web應用(Rich Internet Application)的構建、部署及維護進程,從而達到下降Web應用開發成本、縮短開發週期和提升應用效能的目的。

113

jdonmvc

一個站在Jdon框架上面向DDD,DCI,CQRS等架構風格的表現層開發框架。框架特色:超級易用,易擴展,默認會使用Jdon做爲領域模型管理框架。

114

J-HI

J-HI是一款JAVA WEB應用軟件快速開發開源平臺,主要服務於軟件企業和傳統行業企事業單位信息中心的開發人員,爲他們提供一套完整的一站式的JAVA WEB應用軟件快速開發解決方案。 平臺包括以下幾個部分:

一、J-HI平臺集成環境:J-HI團隊開發了一個集成開發環境J-HI Studio,在此集成開發環境之上,開發人員可以快速搭建本身的開發環境,建立本身的模型,快速生成代碼。 二、核心框架:平臺爲Java代碼與js代碼之間提供了一套完整的面向對象的核心框架支撐系統,能夠認爲這是一個抽象層,不管是在頁面表現上,仍是在CURD的任意一層,平臺均提供了最大限度的抽象。用以保證平臺自己的可擴展性、穩定性及靈活性。J-HI平臺中提供了大量的API(java與js),爲用戶在開發過程當中隨需調用,從而進一步加快開發速度,保證代碼質量。 三、業務平臺功能:包括權限管理、組織結構、枚舉管理等。 四、工做流:包括工做流引擎及流程編輯器等。

平臺主要致力於解決以下問題:: 1.高效: 在J-HI中,有對業務對象和業務流程的圖形化設計工具,能快速的生成一套完整的應用程序。 2.高質: 從業務層面上說,利用J-HI產品的業務對象和業務流程設計器能以圖形化的方式直觀描述業務需求,快速生成代碼徹底開放的完整應用,知足了客戶的業務需求;。 3.變化: 利用J-HI的業務對象設計器可隨時修改對象屬性,快速應對客戶的需求變化,而且源碼可重複生成,不影響手寫的代碼。

115

Summer

Summer是下一代Spring MVC的表現層框架。它提供了最好的HTML5模板引擎並利用了許多Spring3的特性如內容協商(Content negotiation),REST支持,資源處理等。此外它還支持一些開箱即用的JavaEE6規範如Servlet3.0,JPA2.0,Bean Validation和EL2.2。

116

dispatcher

一個簡單的MVC框架或者不能算是MVC 做用:經過URL直接將請求轉發到具體的方法上。 配置:惟一的配置文件爲config.properties,暫時裏面只須要配置一句url.suffix=com.wenbin.action(就是須要進行轉發的類的包路徑,多個路徑用逗號隔開)。解決的問題:簡化配置,去除配置文件,儘量的使得軟件的維護成本下降。而且下降學習成本。

117

SoybeanMilk

SoybeanMilk是一個極其簡易、友好、且零侵入的Java MVC實現框架:

  • 它幾乎沒有學習成本,你只須要熟悉jsp和servlet技術
  • 也不須要你聽從任何代碼編寫模式
  • 你的代碼中找不到任何這個框架的蹤影

使用它,您僅須要指定URL和參數值即可以執行任何Java對象的任何方法並控制和取得其返回結果。

若是你是一個WEB開發者,而且已經有點厭煩現有的WEB開發框架所固有的開發方式(固定的代碼編寫模式、芝麻點的小功能也要寫一堆接口),應該考慮瞭解下這個框架。

還有,這個框架並非僅能應用於WEB程序,你也能夠在桌面程序中使用它。

118

GWT Portlets

GWT Portlets是一個開源Web框架用於開發GWT(Google Web Toolkit)應用程序。它定義了一種很是簡單、高效、強大的編程模型來構建好看和模塊化的GWT應用。編程模型有點相似於爲Liferay, JBoss Portal等portal服務器編寫一個JSR168 portlets。

119

Spring Mobile

Spring Mobile 是 Spring MVC 的擴展,用來簡化手機上的Web應用開發。

120

SerfJ

SerfJ提供了一種最簡便的方式來開發Java REST Web應用程序。它可以幫助你開發一個基於優雅MVC模式的應用程序,採用某些約束習慣來代替配置文件,因此不須要用配置或註釋來指定哪一個視圖對應控制器中的哪一個方法。

121

GrailsUI

GrailsUI(GUI)是一個Grails插件,封裝了YUI和 YUI 擴展(Bubbling),將兩者的組件以Taglib的形式提供給用戶,讓Web頁面UI的開發變得方便快捷。

122

Pandora

Pandora是一個易於使用、快速和輕量級的Web應用開發框架。Pandora使用Velocity模板做爲前臺頁面視圖,Ebean ORM做爲持久層來操做數據庫。

123

eRedG4

eRedG4(易道系統集成與應用開發平臺)是一個開放源代碼的、面向企業計算環境下異構系統集成與行業應用快速二次開發的平臺。它包括:基礎類庫、業務模型框架、富瀏覽器端開發框架、富桌面端開發框架、權限參考模型、平臺代碼生成器六大組成部分。Demo

124

Tobago

Tobago:目標是提供一套基於JSF以及myfaces的良好設計的UI組件。Tobago不只僅只是一套標籤庫。下面的幾點讓它與其它框架不一樣: - 無需HTML設計,聚焦於商業應用程序的開發。開發者能夠將精力集中在用戶界面上,而不是網頁。 - UI組件是對HTML的抽象,它不只僅能夠用於HTML頁面,它的輸出格式能夠定製。 - 「主題」機制,使得能夠很容易切換應用程序的外觀。 - 佈局管理器能夠自動排列組件,這就意味着無需使用HTML表格或其它技術來手工管理組件的佈局。

125

full-hibernate-plugin-for-struts2

這是一個可以將Hibernate徹底整合至Struts2中的插件。包括:Hibernate Validator整合,Hibernate Core Sessions注入,事務注入和Hibernate Core配置管理Web工具。

126

Prism

三棱鏡 (Prism)是一個由JAVA開發的超輕量的開源框架,其目標是實現WEB系統的頁面與代碼分離,而且不須要書寫大量的配置文件。 同時,三棱鏡 (Prism)仍是一個很是簡單的框架,稍有基礎的人均可以在10分鐘以內瞭解開發中的所有規範,1小時以內就能夠靈活應用。 三棱鏡 (Prism)框架設計構思來源於衆多項目實踐,框架充分借簽了當前很是流行的開源Web框架 Struts,吸收了其優勢及精華,並盡力簡化了須要學習的新內容,在實現了頁面及代碼徹底分離的前提下,充分利用開發人員已掌握的開發知識。

127

OpenHandX

OpenHandX前身是我我的長期工做積累的複用代碼,由於工做緣由這些代碼長期不使用、不整理長此以往就會被遺棄掉,實在惋惜。終於有一天下定決心將這些複用代碼重構、從新組織、工具化、並補充文檔,就產生了OpenHandX。若是隻是將OpenHandX工具化容易形成每一個工具之間割裂,很難造成一攬子解決方案,OpenHandX的做用大打折扣。這就須要OpenHandX繼續產品化、平臺化。OpenHandX包括web開發、異步批量開發、報表工具、工做流、規則引擎等。

128

Apache Wicket

visural-wicket是一組開源的Apache Wicket組件和工具。他們被設計成重量輕,鬆散耦合,並很容易以最小依賴與任意現有Wicket應用程序相集成。組件包括:

  1. 下拉框-一個組合框組件,容許用戶從一個值列表中選擇一個項。也能夠用做「建議」框,不強制選擇列表值中的一個。
  2. FancyBox -「燈箱」部分將顯示一個圖像,一個圖像組,另外一個Web容器或在一個有吸引力的模態窗口iframe畫廊。基於FancyBox
  3. 富文本編輯器-一個WYSIWYG HTML編輯器中的文本區小門更換降低。基於NicEdit
  4. codebox -語法高亮顯示組件的源代碼。基於谷歌美化。
  5. 「指示」連接——兩種類型的提交和常規連接組件。有模態連接,在處理表單或動做時顯示模式「等待」(或自定義)消息,以及「指示」連接,在處理請求時使用「Ajax樣式」指示符圖像(或自定義內容)替換某些DOM元素。也許最好檢查一下這些人的演示。
  6. dateinput -一個新的行爲提供了一個彈出JavaScript日期選擇器
  7. inputhint -一個新的行爲提供了「提示文本」裏面輸入字段,它消失時,用戶關注的領域
  8. 美麗祕訣-一個新的行爲,提供了豐富的、有吸引力的、可設置樣式的工具提示的任何組件
  9. 「保兌」–提示/確認對話框,能夠用於任何連接或提交型導做用
  10. 對話框-一個靈活的模態對話框組件,能夠經過ajax或客戶端JavaScript打開/關閉。
  11. lesscss - lesscss和檢票一體化,因此你能夠用「不」文件像他們「.css」
  12. jsr303驗證的形式,結合行爲和形式驗證的註釋自動轉帳JSR-303便門形式

129

MinuteProject

MinuteProject是一個逆向工程工具,它可以根據數據庫結構生成由:spring、hibernate、jpa、ibatis、FitNesse、VAADIN、OpenXava、Roo、Grails、Playframework等技術組合而成的應用程序框架。

130

Sweet

Sweet是一個基於Scala實現的Web開發框架。利用其開發的Web應用程序可運行在任意Java servlet服務器上,並能夠使用全部Java類庫,服務器等。Scala是一種比Java更高級和更易於編寫的開發語言。

131

Webx

Webx是創建在Java Servlet API基礎上的的通用WEB框架。用Webx搭建的應用能夠運行在任何一個標準的WEB應用服務器上面:Tomcat、Jetty、Jboss、Weblogic……。 是一個在阿里巴巴集團內部普遍使用的,層次化、模塊化的一個Web框架。 Webx是基於經典MVC設計模式的WEB框架,推崇頁面驅動和約定勝於配置的理念。 Webx是一個基於Spring的組件框架。組件是一個軟件包,它能夠被其它組件擴展,也能夠擴展其它組件。利用這些特性,Webx不只可以用來開發高度可定製的Web應用(這是它的主要功能),也可以用來幫助你開發高度可擴展的非WEB的應用。

132

firefly

精於心,簡於形。firefly應用程序框架。

  • firefly是一個追求高性能的應用程序框架,性能大幅超越spring三、struts2等,詳情請看性能測試報告
  • 零依賴,僅僅依賴於jdk
  • 精簡、輕量、無侵入
  • core包含IOC、MVC、Interceptor等經常使用功能
  • 使用簡單,基於約定優於配置的思想,可徹底使用Annotation方式 或Annotation和XML混合方式進行配置

133

jibeframework

Jibe是一個現代框架基於Java和Web技術。這個框架提供了一個簡單,但高效的機制來構建動態Web應用,表現層採用ExtJS實現。

134

wabacus

JAVA通用快速開發平臺(The Rapid Platform For J2EE Development) 一、Wabacus框架是一個JAVA開發框架,提供完整的先後臺服務,因此與JQuery,Ext等純客戶端框架不一樣,它能實現完整的SSH框架實現的功能,可是開發效率比SSH框架快好幾倍; 二、Wabacus框架對項目沒有任何侵入,所以能夠與任意框架(包括SSH)共存於一個項目,也就是說部分用Wabacus快速開發,部分Wabacus目前不支持的(好比webservice、全文檢索等) 則用SSH或其它框架開發。 三、這裏普遍使用的「報表」術語,不是指真正意義上的報表,只是一個習慣稱呼,Wabacus框架也不只僅是一個報表工具,而是一個JAVA開發框架,或稱快速開發平臺。Wabacus框架主要特色:

支持熱部署,增、刪、改應用後,無需重啓服務或redeploy,只需訪問/ShowReport.wx?ACTIONTYPE=updateconfig便可。 提供搜索、翻頁、列過濾、列排序、列拖動,調整列寬,下載Excel等功能 支持任意複雜表頭應用的配置,支持數據細覽報表 全程ajax加載,支持IE、Firefox、Chrome、Opera等多瀏覽器。 支持多數據源,多數據庫類型(sqlserver2000、sqlserver200五、mysql、oracle、DB2等) 支持國際化,支持客戶和服務器端的校驗配置 支持數據行分組、列分組、樹形表格,數據統計功能 支持橫向滾動條及表頭固定的垂直滾動條 支持任意層級的主子報表,主從報表 支持經常使用輸入框類型,且支持輸入聯想、下拉框關聯、文件上傳等功能 支持數據編輯功能、支持各類表單的配置 杜絕SQL注入和XSS攻擊

135

joywindow

  • joywindow是的目標是用java語言與HTML顯示來構建桌面應用程序.經過它,開發者能夠用WEB開發的MVC模式構建桌面應用程序,能夠有效提高開發速度.
  • 它實現了模型,控制,顯示層的分離,可讓界面設計者與程序開發者的分工.而且在界面設計上,能夠充分利用web開發的javascript,css,flash,HTML等技術,實現豐富多彩的界面效果.
  • joywindow內置一個類struts2.0的基礎框架(wox),能夠自動封裝輸入值,並經過配置進行邏輯跳轉.joywindow雖然不如java web同樣支持jsp動態頁面,可是集成了velocity做爲動態頁面解析語言. 工做原理:joywindow原理是java內嵌瀏覽器作界面展現,經過一個simpleServer來做爲傳遞資源,響應事件的中間處理,在base版本中,simpleServer也是開發的重點.

136

XEO(eXtensible Enterprise Objects)

XEO是一個敏捷開發框架設計用於構建企業Web應用系統。XEO是圍繞面向對象的概念和模型驅動開發(MDD)實現。利用XEO,你模型的業務實體(包括它們的屬性和方法)都當成XEO模型,而後交由該框架的「Builder」來生成應用程序的支撐架構好比:數據庫表格(持久化數據)和Java類(提供對象-關係映射和方法)。建立好XEO模型以後就能夠生成基於這個模型的Web頁面(包含查詢,修改,列表等功能)。

137

Beangle

Beangle立足Java企業軟件開發,提供敏捷、基於約定(Convention Over Configuration)的腳手架和工具包。着力以簡化項目構建,並規範項目開發習慣,造成易於管理的最佳實踐.(Introduction)

子模塊

  • 一、Commons 提供字符串、壓縮、再配置、csv等基礎api的輔助方法
  • 二、Model 提供對實體映射、查詢存儲、轉換的基礎api
  • 三、Rule 對規則定義、使用和存儲的api
  • 四、Spring 支持基於spring的再配置和自動配置
  • 五、Struts2 Coc 提供struts2的約定優先配置和基礎Action
  • 六、Struts2 Tag 提供常見的web組件
  • 七、Security Core 提供簡化的權限控制框架
  • 八、Security Web 提供web應用上的權限集成
  • 九、Security Bluepring 提供基於數據存儲的默認權限實現
  • 十、Security Cas Support 支持cas集成
  • 十一、Security Ldap Support 支持Ldap集成
  • 十二、Webapp System 提供了樣例應用 scala實現的database程序庫 https://github.com/beangle/beangle-scala
  • 一、Database Meta 數據庫原信息支持包
  • 二、Database Replication 數據庫複製工具

138

WEB4J

WEB4J是個極度簡化、特點十足、一站式的Java Web框架。WEB4J框架的建立者John O'Hanley說到:WEB4J在提高Java開發生產力的同時又消除了各類痛苦,由於其很是精簡且能顯著地加快應用開發的速度。

WEB4J具備以下特性:

一、擁抱約定優於配置(相似於Rails)

二、數據爲王,而不是代碼

三、不會強迫開發者穿新鞋走老路

四、不依賴於JavaScript、客戶化的XML和註解以及對象關係映射

五、不會對你所編寫的類施加線程安全的約束

六、能夠用普通的HTML編寫表單

WEB4J最吸引人的一個地方就是它能夠將SQL放到純文本文件中且遊離於代碼以外,以後就能夠在代碼中經過特殊的對象引用這些SQL,這樣DAO類就變得很是緊湊了。

WEB4J個頭很小,一共才88個類,而Rails中卻有346個類、Struts中有720個類、Spring中有2400多個類。John說WEB4J的學習要比其餘框架容易的多。

其站點對WEB4J的薄弱之處也絕不掩飾:

一、沒有用戶界面widgets庫

二、未提供對AJAX、Web Services及依賴注入的內置支持

三、支持JSP/JSTL,但卻沒有像Velocity那樣的標記庫

139

Spack

Spark是一個源於Sinatra的微型Web開發框架,用於以最小的代價快速開發Web應用。 Sinatra是一個基於Ruby語言,以最小精力爲代價快速建立web應用爲目的的DSL( 領域專屬語言)。

140

Spring4Me

Spring4Me是從另外一個開源項目Enterprise Connect中提煉出來的,以 Spring 爲核心,在 Spring MVC 的基礎上實現了一套基於組件的編程模型。

Spring4Me 的將來發展方向主要是以 Spring MVC, Spring, JPA 爲主, 並以 Demo 工程的形式來展現 Spring MVC, Spring, JPA 的整合方式,以及基於 Spring4Me 的組件開發方式。

141

douyu

一種新的Java開發平臺,將編譯器、Http服務器、MVC、權限完美整合在一塊兒,實現了ORM的自動化。

142

Easy Java Websites

Easy Java Websites (EJW)是一個基於Java Servlet實現的MVC Web應用程序開發框架。它專門爲可以以很是簡單的方式來開發Web應用程序而設計。EJW簡單到能夠在幾分鐘內學會。

143

JBob

JBob是基於Java和AJAX的平臺系統,採用Ext JS做爲前端用戶界面,Et-mvc做爲後臺支持框架,主要用於快速開發企業級信息管理系統。

平臺集成了開發環境、運行框架,主要實現了用戶組織、資源與權限管理、通用操做、國際化語言處理、枚舉管理、運行監控等通用應用。平臺從設計到開發都堅持簡約實用和約定優於配置的原則,致力於精簡的配置、高效的開發模式和穩定的性能,讓你集中精力解決客戶需求,快樂地開發WEB項目。

用戶和權限控制是JBob平臺系統的核心功能之一,從用戶角度出發,以簡易實用和高效穩定的方式實現權限配置。

144

Cetia4

Cetia4是一個對REST提供完善支持的Web開發框架。

Cetia4特色:基於Servlet API開發,能夠運行於全部的Web容器中。 優勢: 1. 能夠充分利用Servlet API和JSP等資源,須要額外學習的概念較少,學習成本較低。 2. 對於傳統的Web應用,能夠使用服務器端HTTP Session;對於Web服務類應用,不使用HTTP Session,基於無狀態服務器模型作開發。 3. 自身包括了對於Web MVC的支持,熟悉Web MVC框架的開發者很容易理解。還內建了參數映射、參數驗證等等傳統Web MVC框架所支持的功能。 4. 內建了本身特有的導航對象棧的概念,對於支持傳統的Web應用的開發(基於瀏覽器的導航)很是有幫助。 5. 提供了JSP標籤庫,對於傳統的基於HTML表單的Web開發很是有幫助。 6. 支持與SiteMesh相配合,由SiteMesh來支持頁面佈局的重用。 7. 內建有與Spring的集成,集成起來很是容易。 8. 配置文件徹底基於標準的web.xml,不須要額外的配置文件。大量使用默認配置,通常狀況下足以知足常見的需求。 9. 擁有很好的文檔。 10. 有內建的國際化支持。 缺點: 1. 沒有內建的HTTP認證機制,須要自行開發安全機制。 2. 對於內容協商的支持比較弱,僅支持HTML和XML格式的表現。須要加以擴展才能支持其餘格式的表現。

145

PrettyFaces

PrettyFaces是一個開源基於過濾器(Filter)的Servlets擴展 ,對JavaServer Faces – JSF 1.1, 1.2和2.0提供了加強支持。可以用於建立便於書籤收藏、搜索引擎友好的網址。PrettyFaces優雅地解決了「RESTful URL」 問題,包括這樣一些特性如:

  1. URL重寫-替換醜陋的URL:具備漂亮的,搜索引擎友好的,人的URL:「/頁/ JSF」:「/優化/頁/」;客戶端瀏覽器從未看到您的原始URL,甚至在源HTML中。
  2. 動態視圖ID -如今對URL進行動態視圖ID映射(經過EL方法表達式),您能夠基於運行時條件顯示不一樣的視圖,有效地將URL從JSF視圖中解耦。
  3. 頁面加載操做-在呈現視圖以前調用一個或多個操做方法,在一個或多個階段。
  4. 管理參數解析HTTP參數解析URL存儲在託管豆,只是獲得一個參考參數豆從其餘java類方便。
  5. 經過ID導航——在一個地方定義頁面ID,使用標準的JSF導航技術輕鬆地在操做方法和組件中引用它們。
  6. 集成驗證URL和查詢參數,可以從新使用現有的驗證器對象。
  7. 易於配置-須要絕對最小的配置;能夠使用XML或註釋啓用。

146

基於全註解方式的SHH基礎框架ssh-base-framework

基於struts2.23 + spring2.5.6 + hibernate3.6.4 + hibernate-generic-dao1.0(除了spring,我整合的都是最新的GA包,hibernate-generic-dao是google code項目庫中一個開源的basedao,我灰常喜歡,由於我找不到更好更適合個人)。

147

Gaelyk

Gaelyk是一個專門針對 Google App Engine 設計的輕量級 Groovy 框架。提供URL路由系統。Google App Engine是Google提供的基於Google數據中心的開發、託管網絡應用程序的平臺,每一個 Google App Engine 應用程序均可使用500MB存儲空間,以及可支持每個月約500萬頁面瀏覽量的CPU和寬帶。目前每一個用戶能夠免費建立十個應用

148

EShow

採用流行的J2EE輕量級框架(Struts2+Spring +Hibernate),基於國外開源框架Appfuse,咱們能夠簡稱Appfuse中文增強版… 簡單易用 Java新手和入門SSH框架着,很是簡單,很是易用! 快速開發 使用基於SSH框架的EShow平臺,能夠快速開發出中小型企業網站和社區門戶! 徹底開源 徹底開放EShow的每個細節! 更新迅速 到羣軟件團隊會每一天更新EShow平臺,使得EShow愈來愈好 理想遠大 讓EShow平臺成爲Java入門者的必備學習框架,成爲一個流行的J2EE框架。

149

topaz-turquoise

Topaz 是一個用於開發EJB+JSP程序的小型框架, 爲了演示開發使用方式,還提供了一個名爲Turquoise的WEB程序例子。 並附帶了我在開發中使用的MySql數據庫。(數據庫文件使用Navicat導出) 我是用的Eclipse版本爲3.6 英文版。 提供的程序,分爲 topaz、turquoiseEJB和turquoiseWAR這三個項目。 請在Eclipse中使用Ant編譯這三個項目。(須要根據你的目錄,修改Ant文件!) 其中,topaz是核心框架,提供了一些Java包以供繼承開發之用, 並提供了名爲"cn.com.topaz.servlet.ControllerServlet"的一個核心類,實現一個簡單的控制器。 turquoiseEJB是一個EJB項目,繼承了topaz的部分類,實現EJB例子。 turquoiseWAR是一個JSP WEB項目,提供了幾個JSP例子。

150

EWeb4j

EWeb4j,一個JavaEE的開源框架,全棧式Web框架。支持REST,事務模板,MVC,ORM,IOC等功能。

主要特性: Component組件支持

  1. DWZ組件
  2. 分頁組件
  3. ……

MVC

  1. 約定因爲配置,可零配置。
  2. 兩種配置方式(xml,註解)供您選擇
  3. 更加靈活方便的url mapping
  4. 兩種參數綁定方式(類屬性、方法參數)供您選擇
  5. RESTful
  6. Json渲染
  7. URL攔截器
  8. action驗證器
  9. ……

IOC

  1. 基本數據類型注入
  2. 無限制嵌套Pojo注入
  3. setter方法注入和構造方法注入

ORM

  1. 約定因爲配置,可零配置。
  2. 兩種配置方式(xml、註解),供您選擇
  3. 簡單的DAOFactory,提供InsertDAO、DeleteDAO、UpdateDAO、SelectDAO、DivPageDAO、SearchDAO、CascadeDAO接口。
  4. 支持表關係、級聯操做
  5. 事務模板
  6. JdbcTemplate
  7. 支持多個數據源
  8. 無緩存,無懶加載,主動級聯操做,純粹的ORM
  9. ……

各類Util工具類

  1. BeanXMLUtil,一個pojo序列化和反序列化到xml的工具類,基於註解
  2. FileUtil,一個文件操做工具類
  3. JsonConverter,JSON轉換工具類
  4. ReflectUtil,一個反射工具類,能獲取setter、getter,使反射獲取方法,屬性更簡易,支持父類的反射
  5. ……

151

MVC框架dingframework

使用java有多年了,一直以來使用java就是用來作web開發,學習java是從servlet和jsp學起,剛開始感受到serlvet,jsp好複雜,好強大,jsp強大到能夠在頁面裏寫java代碼,爲所欲爲,無所不能。java代碼和HTML代碼結合在一塊兒好亂,後來慢慢地接觸了MVC的框架,先是struts,webwork,再到struts2,特別是struts2先進的設計理念,struts2無比的強大,但它的身軀也龐大,如此龐大的東西跑起來速度也就沒那麼快了,struts2的運行速度遠比不上servlet。Spring MVC的速度也好快,但不喜歡它基於元數據的配置。因而想找一個同struts2同樣有先進的設計思想,身軀小,速度和servlet差很少的框架,google了,但沒有找到,因而就動手本身寫了一個,因而有了dingframework MVC的延生。

dingframework MVC是一個輕量的,速度極快的MVC框架。它只有幾十K大小,功能和使用同struts2差很少,基於XML配置,配置文件分模塊化,自動類型轉換,聲明式表單校驗,國際化,自定義攔截器,自動化文件上專,防止重複提交等。dingframework MVC極其簡單,有struts2的大部分功能,徹底基於攔截器設計,若是去掉MVC中的攔截器,就變成了一個原生servlet應用。

152

Nibiru Framework

Nibiru是一個Java服務器端開發框架,以方便模塊化應用程序的建立爲目標。它的特性包括:

  1. 爲不一樣的技術提供了一個抽象層,以免耦合
  2. 提供一些經常使用的共同服務組件好比:CRUDs,報表,工做流,事務管理,安全和國際化
  3. 系統提供動態更新機制,以容許熱插拔。
  4. 實施有利於在一個結構化的方式解決問題的模式。不過要避免強制用戶執行一個給定的解決方案。
  5. 促進解耦模塊之間的通訊。
  6. 避免推倒重來。建立抽象層,但儘量使用現有的技術。

其實現基於現有的許多技術,好比:OSGi, Vaadin, Spring和Hibernate

本文分享自微信公衆號 - Java幫幫(javahelp)

原文出處及轉載信息見文內詳細說明,若有侵權,請聯繫 yunjia_community@tencent.com 刪除。

原始發表時間:2018-01-05

本文參與騰訊雲自媒體分享計劃,歡迎正在閱讀的你也加入,一塊兒分享。

發表於 2018-03-15
相關文章
相關標籤/搜索