Java开源 Web开发框架 (二)

来源:互联网 发布:勒克莱尔 知乎 编辑:程序博客网 时间:2024/05/02 01:48

 Aurora 

Aurora是一个开源的,可配置的,完全面向对象的MVC框架。Aurora的form控制器用的是Spring框架.

更多Aurora信息

 Pustefix 

Pustefix是一个web应用程序框架.它包含一个基于XML/XSLT的视图生成系统与一个清晰MVC模式的后端系统.前台UI可以利用XSLT模板构建并可包含部分的HTML或XML代码.

更多Pustefix信息

 Mentawai 

Mentawai是一个MVC Web框架用来简化Web应用程序的开发.它的主要特点是小(它只解决了web开发过程中碰到的最基本问题),简单(它的所有配置都是用纯Java代码实现,没有绑定额外的XML文件),灵活(整个框架容易按自己的需要进行扩展).

更多Mentawai信息

 Click 

Click一个高性能的J2EE Web应用程序框架适用商业Java开发者。它具有:
 ◆ 简单易学,
 ◆ 面向页面与组件设计,
 ◆ 基于事件编程模型,
 ◆ 自动表单验证,
 ◆ 使用Velocity模板作为页面视图,
 ◆ 漂亮的错误报告功能,
 ◆ 使用Rico(一个开源的JavaScript库,它提供对AJAX完全支持并可让Web应用程序支持拖放操作等其它功能)来对AJAX的支持等。

更多Click信息

 jZonic 

jZonic是一个Web应用程序框架.它由许多部分组成:
◆ 工作流引擎,
◆ 用户管理,
◆ 访问控制与综合权限管理,
◆ 一个配置框架(jConfig),
◆ 支持JSP,XML,XSL,velocity,freemarker等,
◆ i18n支持,
◆ 用户剖析(profiling),
◆ jcron(指定在某一个时间运行Jobs)等.
jzForum论坛就采用这个框架开发。

更多jZonic信息

 Swingweb 

Swingweb是一个web框架,它能够在一个Web容器中操作AWT/Swing应用程序并把它作为一个纯HTML/CSS/javascript的Web应用程序呈现给浏览器.

更多Swingweb信息

 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中的使用).

更多Calyxo信息

 jWic 

jWic是一个Java框架用于开发基于事件的Web应用程序.它能够让你的应用程序脱离与URLs和页面流(page flows)的联系.

更多jWic信息

 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或其他分布式架构做好准备。

更多JVC信息

 Java Server Faces(JSF) 

JavaServer(TM) Faces技术简化了JavaServer应用程序用户界面的开发.各种技术水平的开发者都能够快速创建web应用程序通过在一个页面中装配一些可重复使用UI组件;并可把这些组件与应用程序的数据源连接起来;也可把客户端产生的事件与服务端事件处理者连接起来.这个项目是Sun对JSF技术规范的最完整实现.

更多Java Server Faces(JSF)信息

 XMoon 

XMoon扩展自Jakarta Struts框架用于开发处理基于XML或一些脚本语言(如: BeanShell, JRuby, JudoScript, Jython,Rhino)的Web应用程序.它还提供一个用于展示该框架宠物店Demo.

更多XMoon信息

 Stripes 

Stripes是一个视图框架用于利用最新的Java技术来构建Web应用程序.它具有以下特点:不需要对每一page/action进行映射配置(ActionBeans将自动被发现,它利用注释进行配置),强大的绑定引擎用于构建复杂并脱离请求参数(request parameter)的web对象,易于使用并可本地化的验证与类型转换系统.可重复使用ActionBean作为视图帮助类.支持一个form对应多个事件.透明的文件上传能力.支持持续开发(比如在构思你的ActionBean之前可以先构建与测试JSP)等.

更多Stripes信息

 RIFE/Crud 

RIFE/Crud是RIFE Web框架的一个扩展模块,它可以用给定的POJOs自动生成CRUD web应用程序。它没有生成任何文件所有的事件都是在运行期进行.利用RIFE提供的 site-structure可以把它与你应用程序的数据流与逻辑流相结合.

更多RIFE/Crud信息

 Simple Web Framework 

Simple Web Framework (SWF)是一个基于事件的web框架.它很适合于那些想要开发胖客户端Web应用程序但又不想转向JSF的Struts开发人员。SWF跟Struts一样也是构建在Jakarta commons基础之上,但使用一个不同的request processor。SWF事件模型支持基于XmlHttpRequest的事件提交。

更多Simple Web Framework信息

 wingS 

wingS是一个基于Java Servlets的Web框架,它采用类似于Swing API的MVC模式和面向事件驱动的设计原理。它利用到Swing的模型(models),事件(events),和事件监听。像在Swing中,组件被排列在一个具有分层次的容器中,而其中的root容器被挂在frame中。wingS也支持AJAX。

更多wingS信息

 JBlooming 

JBlooming是一个Java Web开发框架,这个框架尽可能得使用Java API和面向对象的思想来设计接口,所以没有使用标签。而是使用面向对象的Jsp模板技术。JBlooming主要的特点包括:灵活和强大:这个框架能够让你在任何情况下都可以使用java/jsp/html/js (包括AJAX)技术。 一组成熟,漂亮的html组件并且可以很方便地切换到其它皮肤。提供自身校验功能。不需要使用XML,所有的配置都放在JSP中。这个框架还易于使用,而且确实能够提高我们的开发效率和程序的可维护性。

更多JBlooming信息

 GenAndRun 

GenAndRun(Generate And Run)是一个表格驱动开发工具,它与Ruby on Rails(RoR)框架相类似。GenAndRun项目的主要目标是让Java Web开发简单化,利用这个框架来开发让我们只需关注应用程序的商业逻辑和界面,让GenAndRun生成大部份项目所需要的ORM与controller代码。GenAndRun当前使用Spring作为IOC引擎,IBatis作为ORM引擎,JSP/JSTL作为view。在将来新的版本中将会新增对现存其它技术的支持。

更多GenAndRun信息

 Sails 

Sails是一个动态,开源的Web框架,采用测试驱动进行设计。它的配置,urls到Actions的映射与处理后转向的页面都是采用约定俗成的方式。Sails包括:
 反转控制器Rigging,
 模板语言Viento,
 框架的核心Sails,
 Eclipse平台上的开发插件Shipyard,
 范例程序Dock。

更多Sails信息

 Frame2 

Frame2是一个可以代替Struts来开发Web应用程序的框架。它也支持web services在一个MVC上下文(context)中。Frame2还提供一个在Eclipse上进行开发的插件。

更多Frame2信息

 Helma 

Helma是一个用来开发快速,稳定Web应用程序的开源框架。它使用JavaScript 来作为服务端脚本环境,从而可以除去编译周期。Helma是应用程序对象到数据库表格映射零代码化与简单化的先驱,此外一个内嵌的面向对象数据库可以完成未映射对象数据的自动持久化。Helma已被成功运用于许多大流量网站的开发如:antville.org,twoday.net,和blogger.de等网站。

更多Helma信息

 Brill Framework 

这是一个让你只需用Java与XHTML技术就能够开发交互式Web站点的开源框架。它目的就是开发出一个简单,支持WYSIWYG页面编辑而不需要编写Java代码或在JSP页中使用特殊标签的框架。开发基于Java的Web应用程序通常是使用MVC设计模式和JSP技术,而Brill Framework虽然也使用MVC设计模式但在页面技术上它使用XHTML来代替JSP。XHTML的使用能够提高开发Web应用程序的效率与质量,从而减少了成本。

更多Brill Framework信息

 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"的方式来进行页面设置,以易于功能的划分。

更多XX Framework信息

 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.文件上传;
Demo:
  • Spring · Spring w/ Ajax
  • JSF
  • Struts
  • Tapestry
  • WebWork

    更多Equinox信息

  •  Facelets 

    Facelets是一种表现层/视图技术,它使用Tapestry用户所熟悉的概念来构建JSF组件树。

    更多Facelets信息

     Millstone 

    Millstone是一个Web用户界面组件包。用户界面完全采用面向对象服务端编程方式实现。利用这个包你就可以开发出高质量基于Web的UI而不需要关心XHTML,CSS,JavaScript,浏览器兼容等问题。可通其提供的一个在线Demo来了解各个UI组件的特性。Millstone还提供一个可在Eclipse平台上创建和运行Millstone项目的插件。

    更多Millstone信息

     SOFIA 

    SOFIA是为J2EE提供的一个快速应用程序开发工具。它集成了各种优秀的Java框架来为开发高质量的数据库驱动的Web应用程序提供一个解决方案。

    更多SOFIA信息

     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....

    更多SpringSide信息

     Groovy on Rails (Grails) 

    Grails是构建在开源技术如:Spring,Hibernate和SiteMesh之上的Web框架。它提供一个类似于Rails的平台可以无缝与Java平台相集成使得开发者能利用当前在Java和JDK方面的投入。Grails提供一个完整的开发平台包括内置Jetty web服务器并提供了一些强大的功能比如简单的对象关系映射(ORM),自动重新加载应用程序,为CRUD(新增,查询,修改,删除)操作提供代码自动生成支架(scaffolding)。此外Grails还提供了一些在Java中惯用的语法包括:运用AOP思想的拦截器,动态标签库,JSP和GSP(Groovy Servers Pages)支持。

    更多Groovy on Rails (Grails)信息

     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的支持。

    更多Waffle信息

     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机制。

     
    本文转自: http://www.open-open.com/2_07.htm
    原创粉丝点击