精华内容
下载资源
问答
  • java web开源项目在线考试系统

    热门讨论 2014-05-23 00:14:31
    java web开源项目在线考试系统,配置环境连接在此资源的txt文档中
  • 10款顶级web开源框架

    千次阅读 2017-08-05 14:09:27
    作为开发者,我们需要了解一些 宝贵的CSS UI开源框架资源,它们可以帮助我们更快更好地实现一些现代化的界面,包括一些移动设备的网页界面风格设计。本文分享了10个顶级的CSS UI开源框架,有几个确实不错,一起来看...
    随着CSS3和HTML5的流行,我们的WEB页面不仅需要更人性化的设计理念,而且需要更酷的页面特效和用户体验。作为开发者,我们需要了解一些 宝贵的CSS UI开源框架资源,它们可以帮助我们更快更好地实现一些现代化的界面,包括一些移动设备的网页界面风格设计。本文分享了10个顶级的CSS UI开源框架,有几个确实不错,一起来看看。

    1、QUI – 最流行的Web前端UI框架QUI是由twitter推出的Web前端UI框架,它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。它使用了最新的浏览器技术,QUI提供了时尚的排版样式,表单,buttons,表 格,网格系统等等。

    2、jQuery UI - 基于jQuery的开源Javascript框架
    jQuery UI是一款基于jQuery的开源Javascript框架,jQuery UI框架主要提供了用户交互、动画、特效和可更换主题的可视控件,让开发者可以更方便地实现网页交互界面,jQuery UI的整个框架比较庞大,但你也可以根据自己需要使用的功能生成适合自己的框架底层。jQuery UI界面设计非常漂亮,值得一试。
    官方网站:http://jqueryui.com/

    3、jQuery UI Bootstrap
    它是jQuery UI和Bootstrap的集成,它是Bootstrap样式的,因此外观比较漂亮,同时它拥有jQuery UI的控件功能,这也方便开发者快速地创建一个网页控件。
    官方网站:https://github.com/jquery-ui-bootstrap/jquery-ui-bootstrap/

    4、BootMetro - Metro风格的CSS框架
    BootMetro是一款基于Bootstrap的前端UI框架,BootMetro的特点是可以很方便地构建类似Windonws 8扁平化风格的网页界面,效果非常不错。分享一个最好用的UI前端框架!
    官方网站:http://aozora.github.io/bootmetro/

    5、Flat UI - 扁平风格 UI 工具包
    Flat UI是一套精美的扁平风格 UI 工具包,基于 Twitter Bootstrap 实现。这套界面工具包含许多基本的和复杂的 UI 部件,例如按钮,输入框,组合按钮,复选框,单选按钮,标签,菜单,进度条和滑块,导航元素等等。
    官方网站:https://github.com/designmodo/Flat-UI

    6、网易CSS框架 NEC
    NEC是网易推出的开源前端CSS框架,NEC提供了丰富UI代码库和插件,可以极大的帮助开发人员提高开发效率。即使你并非前端专业开发人员,利用NEC你也可以快速地构建属于自己的网页应用。
    官方网站:http://nec.netease.com/

    7、Alloy UI – 功能强大的CSS UI框架
    Alloy UI是基于YUI 3的前段UI框架,包含一套丰富的(超过60)UI 部件,如图片库,对话框,树形结构,面板,自动完成,按钮,日历控件,工具条等。
    官方网站:http://alloyui.com/

    8、Cardinal – 移动端的CSS UI框架
    Cardinal 是一个小型的移动优先的 CSS 框架,提供很多有用的默认样式、可缩放排版、可重用模块和一个简单的响应式表格系统。
    官方网站:http://cardinalcss.com/

    9、快速开发CSS的框架 CSScaffold
    不同于许多CSS框架,它必须依靠PHP与Apache的mod_rewrite来执行,但也因为需要这两种东西,让CSScaffold变得很神奇、很方便,写起CSS来又快又轻松!
    http://www.w3avenue.com/2009/10/13/csscaffold-php-based-css-framework/

    10、后台UI开发框架 MuseUI
    一款基于bootstrap风格,兼容于主流浏览器(包括IE6)的后端UI开发组件。
    官方网站:http://git.oschina.net/muse/museui
    展开全文
  • Web开源框架Rose简介

    千次阅读 2016-09-07 23:03:47
    Rose 是由 人人网、糯米网 提供的、基于Servlet规范、Spring“规范”的开放源代码WEB开发框架。 Rose的开源地址是:http://code.google.com/p/paoding-rose/ 本文不打算为您详细介绍Rose,而且假设你已经对Rose...

    Rose 是由 人人网糯米网 提供的、基于Servlet规范、Spring“规范”的开放源代码WEB开发框架。

    Rose的开源地址是:http://code.google.com/p/paoding-rose/

    本文不打算为您详细介绍Rose,而且假设你已经对Rose已经有一些了解,本文的中心是自己初次接触Rose后的一点感言。

    作者眼中的Rose哲学

    • 基于IoC容器 (使用Spring 2.5.6)
    • 收集最佳实践,形成规范和惯例,引导按规范惯例,简便开发
    • 收集通用功能,形成一些可使用的组件,提高生产效率
    • 特性的插拔,使用基于组合而非继承的设计
    • 提供可扩展的点,保持框架的可扩展性
    • 注重使用简易性的同时,注重内部代码设计和实现

    我对Rose的理解

    一句话

    基于spring的组件框架,推崇页面驱动和约定优于配置。

    Rose中的controller是什么?

    你可以简单的把它理解为MVC模式中的controller,但它的意义远不止于此,Rose中的Controller可以说把页面驱动和约定优于配置表现的淋漓尽致,它扮演接收处理web请求职责的对象类,接收web请求传入的参数、调度服务处理业务、将处理结果设置到model中,返回一个指示(页面)。

    一个好的web开发框架是什么?在我认为,那就是利于理解(MVC模式)和维护、快速响应开发需求、提高开发效率以及不俗的性能表现。

    简单来说,controller代表一个用例中的角色,而它的action方法则代表角色的行为,它使开发人员把精力更加注重业务逻辑的实现。

    举一个简单的例子,相信很多网站都有用户注册和登录等功能,下面是其用例图:



     那么URI设计为(一种可能的方案):

    修改信息

    user/${userId}/update

    登录

    user /login

    注册

    user /register

    修改密码

    user /${userId}/updatePsw

    退出登录

    user/logout

    从上面我们可以一眼看出,这个controller接收这些请求都是围绕着user这个角色,所以我们抽象出UserController这个对象,而它所产生的行为(URI)正好对应各个action方法。

    另外,从命名规则上看,作者建议controller类采用名词,action方法采用动词,这的确是一个不错的实践。

    OK!我们只要再写几个页面就可以简单的把这个请求框架搭起来,接下来我们将大部分的精力就放在login、register等业务逻辑的实现,很显然,这提高了我们的开发效率。

     

    到这里,你肯定要问,写好了controller,Rose是怎么将实际的请求映射到action方法的呢,这之间肯定有一个约定,这个约定就是请求的URL和所在controller包路径、controller类名称、类自定义uri path注解、action方法,method注解以及注解中的uri匹配参数(具体的匹配规则这里不再赘述)息息相关,这里是Rose的精华所在,也是体现约定的精华所在。

    但在技术上,要找到特定action方法,肯定免不了使用反射来达到这一目的,但使用反射会不会对Rose框架的性能有什么大的影响呢?(作者说“我们 有办法 通过在运行时自动进行代码增强包装成Command而不使用类反射来实现目的”,不太明白这句话的含义,望高人指示!)。

    实际上,在Rose启动时,Rose会“浏览”controller类和其action方法以及两者相关的注解,形成一个Rose匹配树,这个匹配树的形成意味着Rose已经把所有URI映射规则以及尽可能做的事事先做好(包括对method方法名以及相关要素的缓存),使Rose在服务状态时,不用再通过类反射来做和类、方法有关的识别和判断,直接就可以从缓存里获取method对象以及相关的其他要素进行处理。这是使用空间来交换时间的最佳例证,在服务状态完全不使用反射也是不可能的,比如运行时访问开发者自定义的action方法肯定要通过method.invoke方法调用(对于代理对象的,使用Proxy来调用),还有就是在提交表单时,如果action方法参数是一个POJO,那么就需要通过反射将表单里的值动态设置到这个Bean属性中。

    Rose眼中的MVC模型

    根据MVC的定义:

     

    • (控制器Controller)- 负责转发请求,对请求进行处理。
    • (视图View) - 界面设计人员进行图形界面设计。
    • (模型Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。

    Rose的controller可以理解为MVC中的C,JSP和velocity可以理解为view,那么model呢?这部分通常是调用业务逻辑充血对象或者自己实现相应的service ,这也是开发人员最应该关注的地方。下图是Rose眼中的MVC,画的比较简陋:



     其中的invocation对象应该引起你的注意,作者对invocation下的定义是:

    “通常意义上的“Invocation”是指一次调用,特别地是指对方法的一次调用,是对“一次调用”的抽象与封装,比如包含了调用的输入参数、被调用的对象与方法等等。

    在Rose框架下,最终的处理者应该是某个控制器方法,与之相关的还有参数解析器、验证器以及知名度较高的拦截器。为了封装与一次请求处理相关的数据,我们设计了一个Invocation类来表示。”

     

    Rose和filter

    Rose的入口是net.paoding.rose.RoseFilter,在它背后是一个责任链,采用filter的好处是更加灵活,servlet的映射比较笨拙,一旦处理不了,Servlet规范没有提供机制使得可以由配置在web.xml的其他正常组件处理 (除404,500等错误处理组件之外)。

    采用filter的另一个好处是,用作者的话来说,Rose可以很好地和其他web框架兼容。它能够优先处理认定的事情,如无法处理再交给其它Filter、Servlet或JSP来处理,这在改造遗留系统、对各种uri的支持具有天然优越性。正是使用过滤器,Rose不再要求请求地址具有特殊的后缀。

     

    拦截器

    先来一个简单的推理,某些uri需要做权限设计,一般是在“特定的条件”下才能访问这个uri,根据Rose的uri映射规则,一个uri对应一个action方法,也就是说我们需要标识在“特定的条件”下才能访问这个action方法。

    为了更加准确模拟现实世界中这样的约定,我们用注解来表示“特定的条件”,一般这样的注解没有值,只是个标签,它的职责是“表明”,至于表明之后做什么,由拦截器来实现。

    比如有些uri需要登录之后才能访问,首先定义@LoginRequired来表示“需要登录”,然后把它放在你认为需要登陆之后才能访问的action方法上(放在类上表示其所有的方法都生效),接下来写一个拦截器,用来实现在访问标识“@LoginRequired”的action方法之前,检查用户是否登录,如果登录则继续执行,如果没有登录则重定向到登陆页面。

    展开全文
  • Python web开源框架整理

    2016-01-07 08:43:58
    从GitHub中整理出的15个最受欢迎的Python开源框架。这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等。 Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有...
    从GitHub中整理出的15个最受欢迎的Python开源框架。这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等。
    
    Django: Python Web应用开发框架
        Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响。Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。
    
    Diesel:基于Greenlet的事件I/O框架
        Diesel提供一个整洁的API来编写网络客户端和服务器。支持TCP和UDP。
    
    Flask:一个用Python编写的轻量级Web应用框架
        Flask是一个使用Python编写的轻量级Web应用框架。基于Werkzeug WSGI工具箱和Jinja2 
    模板引擎。Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数
    据库、窗体验证工具。
    
    Cubes:轻量级Python OLAP框架
        Cubes是一个轻量级Python框架,包含OLAP、多维数据分析和浏览聚合数据(aggregated data)等工具。
    
    Kartograph.py:创造矢量地图的轻量级Python框架
        Kartograph是一个Python库,用来为ESRI生成SVG地图。Kartograph.py目前仍处于beta阶段,你可以在virtualenv环境下来测试。
    
    Pulsar:Python的事件驱动并发框架
        Pulsar是一个事件驱动的并发框架,有了pulsar,你可以写出在不同进程或线程中运行一个或多个活动的异步服务器。
    
    Web2py:全栈式Web框架
        Web2py是一个为Python语言提供的全功能Web应用框架,旨在敏捷快速的开发Web应用,具有快速、安全以及可移植的数据库驱动的应用,兼容Google App Engine。
    
    Falcon:构建云API和网络应用后端的高性能Python框架
        Falcon是一个构建云API的高性能Python框架,它鼓励使用REST架构风格,尽可能以最少的力气做最多的事情。
    
    Dpark:Python版的Spark
        DPark是Spark的Python克隆,是一个Python实现的分布式计算框架,可以非常方便地实现大规模数据处理和迭代计算。DPark由豆瓣实现,目前豆瓣内部的绝大多数数据分析都使用DPark完成,正日趋完善。
    
    Buildbot:基于Python的持续集成测试框架
        Buildbot是一个开源框架,可以自动化软件构建、测试和发布等过程。每当代码有改变,服务器要求不同平台上的客户端立即进行代码构建和测试,收集并报告不同平台的构建和测试结果。
    
    Zerorpc:基于ZeroMQ的高性能分布式RPC框架
        Zerorpc是一个基于ZeroMQ和MessagePack开发的远程过程调用协议(RPC)实现。和 Zerorpc 一起使用的 Service API 被称为 zeroservice。Zerorpc 可以通过编程或命令行方式调用。
    
    Bottle: 微型Python Web框架
        Bottle是一个简单高效的遵循WSGI的微型python Web框架。说微型,是因为它只有一个文件,除Python标准库外,它不依赖于任何第三方模块。
    
    Tornado:异步非阻塞IO的Python Web框架
        Tornado的全称是Torado Web Server,从名字上看就可知道它可以用作Web服务器,但同时它也是一个Python Web的开发框架。最初是在FriendFeed公司的网站上使用,FaceBook收购了之后便开源了出来。
    
    webpy: 轻量级的Python Web框架
        webpy的设计理念力求精简(Keep it simple and powerful),源码很简短,只提供一个框架所必须的东西,不依赖大量的第三方模块,它没有URL路由、没有模板也没有数据库的访问。
    
    Scrapy:Python的爬虫框架
        Scrapy是一个使用Python编写的,轻量级的,简单轻巧,并且使用起来非常的方便。
    展开全文
  • web开源框架大汇总

    万次阅读 2016-04-19 22:46:27
    EasyJWeb是基于java技术,应用于WEB应用程序快速开发的MVC框架,框架设计构思来源于国内众多项目实践,框架充分借签了当前主要流行的开源Web框架(Struts、JSF、Tapestry 、Webwork),吸取了其优点及精华,利用...
    Struts 项目简介信息 
    Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件

    主页地址:http://struts.apache.org/

    -------------------------------------------

    Turbine 项目简介信息
    Turbine是基于Servlet的框架包,也是开放源代码Jakarta项目。目前还没有关于Turbine的大量文档。它类似于Struts,但是有一些主要区别。突出的一点就是它并没有与JSP耦合。Turbine的特点是它提供了大量可重用的组件。此框架包中包含了大量组件,但是这些组件是离散的。它似乎应该给出更多的组件库,但是由于它缺少文档,所以很难掌握完整的体系结构。

    主页地址:http://jakarta.apache.org/turbine/

    -------------------------------------------

    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这两个框架的基础之上.【EclipseWork:用于WebWork辅助开发的一个Eclipse插件】

    主页地址:http://www.opensymphony.com/webwork/

    -------------------------------------------

    Tapestry 项目简介信息
    Tapestry是一个开源的基于servlet的应用程序框架,它使用组件对象模型来创建动态的,交互的 web应用。一个组件就是任意一个带有jwcid属性的html标记。其中jwc的意思是Java Web Component。Tapestry使得java代码与html完全分离,利用这个框架开发大型应用变得轻而易举。并且开发的应用很容易维护和升级。 Tapestry支持本地化,其错误报告也很详细。Tapestry主要利用javabean和xml技术进行开发。

    主页地址:http://jakarta.apache.org/tapestry/

    -------------------------------------------

    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本身的属性数据)传递上去。

    主页地址:http://www.springframework.org/

    -------------------------------------------

    AppFuse 项目简介信息
    AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Ant、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL)于一身的Web开发框架。AppFuse提供了Web系统开发过程中都需要开发的一些功能,如登陆、用户密码加密,用户管理、根据不同的用户可以展现不同的菜单.J2EE开发者也可以在此基础上开发加入自己的功能模块。利用这个框架可以大幅度的提高开发速度。

    主页地址:https://appfuse.dev.java.net/

    -------------------------------------------

    Cocoon 项目简介信息
    Stefano Mazzocchi于1999年1月创建了Cocoon项目,将其作为ASF之下的开放源代码项目。Cocoon的目标是帮助分离内容格式、逻辑和对基于 XML网站的管理功能。Cocoon使用XML, Extensible Stylesheet Language Transformations (XSLT), 以及 Simple API for XML (SAX) 技术,以帮助创建、部署和维护XML服务器应用程序。它支持大多数类型的数据源,包括RDBMS、LDAP和文件系统。

    主页地址:http://cocoon.apache.org/

    -------------------------------------------

    MyFaces 项目简介信息
    MyFaces是JavaServer(tm) Faces(JSF) Web框架 (JSR 127)的一个实现。JavaServer(tm) Faces Web框架是一个新的实现MVC模式的规范.它可以与Struts框架相媲美甚至的一些特性与观念已经超过了Struts.【FacesIDE:Eclipse下的一个辅助开发插件】

    主页地址:http://myfaces.apache.org/

    -------------------------------------------

    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,

    主页地址:http://www.easyjf.com/easyjweb/

    -------------------------------------------

    Wicket 项目简介信息
    Wicket一个开发Java Web应用程序框架。它使得开发web应用程序变得容易而轻松。 Wicket利用一个POJO data beans组件使得它可以与任何持久层技术相结合。一个结合Eclipse工具的Demo可以引导你如何利用Wicket来发开Web应用程序。

    主页地址:http://wicket.sourceforge.net/index.html

    -------------------------------------------

    WebOnSwing 项目简介信息

    WebOnSwing是一个革命性的多环境应用程序框架.它允许你创建web 应用程序并可用同样的方式开发一个桌面程序.它不需要使用Jsp文件,特殊的标签,XML文件, requests, posts等,所有的都是Java与直接来自图形设计的HTML文件.这个框架使用Swing组件来构造和处理HTML页面,并允许使用MVC设计模式. 所有在Web上的工具都可以由Swing 提供.

    主页地址:http://webonswing.sourceforge.net/

    -------------------------------------------

    JPublish 项目简介信息
    JPublish是一个功能强大的Web发布系统,设计为确保开发者角色的清晰的分离。JPublish 支持多模板引擎,包括Jakarta Apache's Velocity, FreeMarker and WebMacro。JPublish支持众多脚本语言,包括Python, BeanShell, and JavaScript。

    主页地址:http://www.jpublish.org/

    -------------------------------------------

    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
    https://equinox.dev.java.net/

    主页地址:https://equinox.dev.java.net/

    -------------------------------------------

    JSPWidget 项目简介信息
    JSPWidget是一个Jsp框架,它提供了事件驱动,视图状态保留(view state retained),服务端GUI控制来使得JSP开发能够像在传统的窗体客户端与基于客户端的web应用程序中一样直观.

    主页地址:http://edu.uuu.com.tw/jspwidget/default.jsp

    -------------------------------------------

    jPetStore 项目简介信息
    基于Struts与ibatis技术的java宠物店。

    主页地址:http://ibatis.apache.org/petstore.html

    -------------------------------------------

    JSF
    JSF-Spring是一个可以把JSF1.1 (JavaServer Faces)与Spring1.2框架的相互结合在起的一个组件.

    主页地址:http://jsf-spring.sourceforge.net/

    -------------------------------------------

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

    主页地址:https://javaserverfaces.dev.java.net/

    -------------------------------------------

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


    主页地址:http://www.jblooming.org/

    -------------------------------------------

    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等。
    https://rife.dev.java.net/

    主页地址:http://rifers.org/

    -------------------------------------------

    Beehive 项目简介信息
    Beehive用于简化Java 2 Platform, Enterprise Edition(J2EE)以及Web服务编程。
    Apache Beehive支持以下功能:
    *Java Page Flow(JPF)技术,也称为(NetUI)
    *轻量级的组件框架
    *基于Java Specification Request(JSR)181的Web 服务

    主页地址:http://incubator.apache.org/beehive/

    -------------------------------------------

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

    主页地址:http://stripes.mc4j.org/confluence/display/stripes/Home

    -------------------------------------------

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

    主页地址:http://www.millstone.org/

    -------------------------------------------

    SiteMesh 项目简介信息
    OS(OpenSymphony)的SiteMesh是一个用来在JSP中实现页面布局和装饰(layout and decoration)的框架组件,能够帮助网站开发人员较容易实现页面中动态内容和静态装饰外观的分离。

    主页地址:http://www.opensymphony.com/sitemesh/

    -------------------------------------------

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

    主页地址:http://xmoon.sourceforge.net/

    -------------------------------------------

    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这两个框架的基础之上.【EclipseWork用于WebWork辅助开发的一个Eclipse插件

    主页地址:http://www.opensymphony.com/webwork/

    -------------------------------------------

    Struts项目简介信息
    Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE用于Struts辅助开发的一个Eclipse插件

    主页地址:http://struts.apache.org/

    -------------------------------------------

    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等)实现快速开发。

    主页地址:http://www.easyjf.com/easyjweb/

    -------------------------------------------

    Tapestry项目简介信息
    Tapestry是一个开源的基于servlet的应用程序框架,它使用组件对象模型来创建动态的,交互的web应用。一个组件就是任意一个带有jwcid属性的html标记。其中jwc的意思是Java Web Component。Tapestry使得java代码与html完全分离,利用这个框架开发大型应用变得轻而易举。并且开发的应用很容易维护和升级。Tapestry支持本地化,其错误报告也很详细。Tapestry主要利用javabean和xml技术进行开发。【Spindle:Tapestry辅助开发Eclipse插件】.

    主页地址:http://jakarta.apache.org/tapestry/

    -------------------------------------------

    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下进行开发的插件

    主页地址:http://cocoon.apache.org/

    -------------------------------------------

    Echo项目简介信息
    Echo是为用Java开发Web应用程序提供的一个面向对象,事件驱动的框架。使用Echo 框架来编程类似于使用Swing API来开发应用程序或applets 。

    主页地址:http://www.nextapp.com/products/echo/

    -------------------------------------------

    Turbine项目简介信息
    Turbine是基于Servlet的框架包,也是开放源代码Jakarta项目。目前还没有关于Turbine的大量文档。它类似于Struts,但是有一些主要区别。突出的一点就是它并没有与JSP耦合。Turbine的特点是它提供了大量可重用的组件。此框架包中包含了大量组件,但是这些组件是离散的。它似乎应该给出更多的组件库,但是由于它缺少文档,所以很难掌握完整的体系结构。

    主页地址:http://jakarta.apache.org/turbine/

    -------------------------------------------

    MyFaces项目简介信息
    MyFaces是JavaServer(tm) Faces(JSF) Web框架 (JSR 127)的一个实现。JavaServer(tm) Faces Web框架是一个新的实现MVC模式的规范.它可以与Struts框架相媲美甚至的一些特性与观念已经超过了Struts.【FacesIDE:Eclipse下的一个辅助开发插件】.

    主页地址:http://myfaces.apache.org/

    -------------------------------------------

    JPublish项目简介信息
    JPublish是一个功能强大的Web发布系统,设计为确保开发者角色的清晰的分离。JPublish 支持多模板引擎,包括Jakarta Apaches Velocity, FreeMarker and WebMacro。JPublish支持众多脚本语言,包括Python, BeanShell, and JavaScript。

    主页地址:http://www.jpublish.org/

    -------------------------------------------

    Japple项目简介信息
    Japple是一个建造Web应用程序和服务的快速应用程序开发环境。Japple在Java2平台和开放标准之上建造,和传统方法相比可以让你更快、更容易、更有效地开发和部署Web应用程序。

    主页地址:http://www.japple.org/about.html

    -------------------------------------------

    Jaffa项目简介信息
    是为快速应用程序开发提供的一个企业Java框架。JAFFA 是一个Java Web应用程序开发框架,用基于MVC为基础的Web窗口部件来扩展现存的项目。

    主页地址:http://jaffa.sourceforge.net/

    -------------------------------------------

    Anvil项目简介信息
    Anvil是一个基于Java的为Web程序开发的平台,独立或伺服式都是可部署的。它包括大量功能齐全的面向对象的编程语言。语言的一个子集也可用于一个以tag为基础的模板语言。所有的脚本和模板都被汇编为Java比特代码。

    主页地址:http://njet.org/

    -------------------------------------------

    SiteMesh项目简介信息
    OS(OpenSymphony)的SiteMesh是一个用来在JSP中实现页面布局和装饰(layout and decoration)的框架组件,能够帮助网站开发人员较容易实现页面中动态内容和静态装饰外观的分离。

    主页地址:http://www.opensymphony.com/sitemesh/

    -------------------------------------------

    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系统消息队列的处理机制。

    主页地址:http://barracudamvc.org/Barracuda/

    -------------------------------------------

    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一体。

    主页地址:http://mav.sourceforge.net/

    -------------------------------------------

    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本身的属性数据)传递上去。

    主页地址:http://www.springframework.org/

    -------------------------------------------

    Shocks项目简介信息
    Shocks 是一个开放源码的开发框架,目的是减少 Java Servlet 应用的复杂性。Shocks 并不是 MVC 模式的开发框架,而是采用下一代的体系结构,明确分开了内部各个组件的角色。该项目目前还不够成熟,但值得关注。这里只是简单介绍,如果你要快速了解 Shocks,请阅读 Shocks 的 FAQ,里面讲解了 Shocks 与 Struts,Webwork,Spring 的关系和差异。

    主页地址:http://shocks.codehaus.org/

    -------------------------------------------

    WebCream项目简介信息
    WebCream提供基于Java应用程序和Applet的web GUI,允许开发人员利用AWT和Swing实现GUI前端应用程序,同时自动地使HTML访问该应用程序。

    主页地址:http://creamtec.com:30422/webcream/

    -------------------------------------------

    AppFuse项目简介信息
    AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Ant、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL)于一身的Web开发框架。AppFuse提供了Web系统开发过程中都需要开发的一些功能,如登陆、用户密码加密,用户管理、根据不同的用户可以展现不同的菜单.J2EE开发者也可以在此基础上开发加入自己的功能模块。利用这个框架可以大幅度的提高开发速度。

    主页地址:https://appfuse.dev.java.net/

    -------------------------------------------

    VRaptor2项目简介信息
    VRaptor2是一个MVC与IOC的Web框架.它采用了许多框的思想包括:JBoss Seam,Stripes,Webwork,Hibernate Annotations等。VRaptor2充分利用Java5注释使得可以通过简单的方式来处理Web编程。你的商业逻辑类不需要与javax.servlet API联系,并且与其它框架相比它只需要很少配置。

    主页地址:http://vraptor2.sourceforge.net/

    -------------------------------------------

    Chrysalis项目简介信息
    Chrysalis是一个Java Web开发框架.它有一个不同于大多数MVC Web框架的地方.Chrysalis的控制器类跟正常的Java类一样有着多个方法,客户端请求的URLs被映射到这些控制器方法.

    主页地址:http://chrysalis.sourceforge.net/

    -------------------------------------------

    Verge项目简介信息
    Verge框架是一个开源J2EE应用程序框架完全采用Java开发只使用到标准的J2EE APIs.这个开源项目的目的为开发企业应用程序提供一个非常灵活和可扩展的框架.

    主页地址:http://www.inversoft.com/index.html

    -------------------------------------------

    WebOnSwing项目简介信息
    WebOnSwing是一个革命性的多环境应用程序框架.它允许你创建web 应用程序并可用同样的方式开发一个桌面程序.它不需要使用Jsp文件,特殊的标签,XML文件, requests, posts等,所有的都是Java与直接来自图形设计的HTML文件.这个框架使用Swing组件来构造和处理HTML页面,并允许使用MVC设计模式.所有在Web上的工具都可以由Swing 提供.

    主页地址:http://webonswing.sourceforge.net/

    -------------------------------------------

    RIFE项目简介信息
    RIFE为开发和设计Web应用程序提供了另外一种途径。它基于Java平台构建,但它提供了所有需要的工具和AIPs用统一的风格,快速地实现所有web程序各开发角色之间的任务联系。RIFE被设计成在整个开发周期中完全分离了开发角色之间的任务,每个developer,dba和designer只需关注它们自己的任务,整个开发工作随时都可以很容易的与其它团队的工作相结合,使得这样子开发出来的将是一个松耦合的健壮的系统。RIFE由许多标准的组件组成,它们包括:
    *Web程序引擎
    *结合Web扩展
    *多格式模板引擎选择(html, xml, sql, java, txt, ...)
    *支持内容导出(比如导出为XSLT格式)
    *验证框架
    *数据库查询构建器
    *简单的持久层
    *JDBC优化与连接池
    *可配置框架等。
     用它可以轻松的解决Https无状态连接问题与CGI的接口。这个框架已经成功的应用在许多网站上如:Bla-bla List,Netwerk,Caosity,Dag Allemaal,GreenEnergy等。

    主页地址:https://rife.dev.java.net/

    -------------------------------------------

    Wicket项目简介信息
    Wicket一个开发Java Web应用程序框架。它使得开发web应用程序变得容易而轻松。 Wicket利用一个POJO data beans组件使得它可以与任何持久层技术相结合。一个结合Eclipse工具的Demo可以引导你如何利用Wicket来发开Web应用程序。

    主页地址:http://wicket.sourceforge.net/index.html

    -------------------------------------------

    Beehive项目简介信息
    Beehive用于简化Java 2 Platform, Enterprise Edition(J2EE)以及Web服务编程。
    Apache Beehive支持以下功能:
    *Java Page Flow(JPF)技术,也称为(NetUI)
    *轻量级的组件框架
    *基于Java Specification Request(JSR)181的Web 服务

    主页地址:http://incubator.apache.org/beehive/

    -------------------------------------------

    JSPWidget项目简介信息
    JSPWidget是一个Jsp框架,它提供了事件驱动,视图状态保留(view state retained),服务端GUI控制来使得JSP开发能够像在传统的窗体客户端与基于客户端的web应用程序中一样直观.

    主页地址:http://edu.uuu.com.tw/jspwidget/default.jsp

    -------------------------------------------

    JNex项目简介信息
    JNex是实现MVC设计模式的纯Java框架.它可以使用三种视图(view):Swing,HTML,和Canoo ULC.

    主页地址:http://jnex.sourceforge.net/

    -------------------------------------------

    WFNM项目简介信息
    WebFlow Navigation Manager (WFNM)是一个轻量级的Web框架.它允许WebFlow定义,服务端历史向导(navigation history),自动动Session清除.WFNM框架把web应用程序分离几个WebFlow,服务端保持访问过的页面和WebFlow的历史记录,可以动态地返回到访问过的页面与WebFlow.

    主页地址:http://wfnm.sourceforge.net/

    -------------------------------------------

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

    主页地址:http://www.orbeon.com/software/

    -------------------------------------------

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

    主页地址:http://www.auroramvc.org/aurora-web/index.htm

    -------------------------------------------

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

    主页地址:http://pustefix.sourceforge.net/

    -------------------------------------------

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

    主页地址:http://mentawai.lohis.com.br/

    -------------------------------------------

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

    主页地址:http://click.sourceforge.net/

    -------------------------------------------

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

    主页地址:http://www.jzonic.org/wiki.jz

    -------------------------------------------

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

    主页地址:http://swingweb.sourceforge.net/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中的使用).

    主页地址:http://calyxo.org/

    -------------------------------------------

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

    主页地址:http://www.jwic.de/home/

    -------------------------------------------

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

    主页地址:http://jvc.cosoft.org.cn

    -------------------------------------------

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

    主页地址:https://javaserverfaces.dev.java.net/

    -------------------------------------------

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


    主页地址:http://xmoon.sourceforge.net/

    -------------------------------------------

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

    主页地址:http://stripes.mc4j.org/confluence/display/stripes/Home

    -------------------------------------------

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

    主页地址:http://rifers.org/wiki/display/RIFECRUD/Home

    -------------------------------------------

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

    主页地址:https://swf.dev.java.net/

    -------------------------------------------

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

    主页地址:http://www.j-wings.org

    -------------------------------------------

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


    主页地址:http://www.jblooming.org/

    -------------------------------------------

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

    主页地址:http://210.17.173.101:8080/genandrun/index.jsp

    -------------------------------------------

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


    主页地址:http://www.opensails.org/

    -------------------------------------------

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

    主页地址:http://sourceforge.net/projects/frame2

    -------------------------------------------

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

    主页地址:http://helma.org/

    -------------------------------------------

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

    主页地址:http://www.brillframework.org/fwwebapp/Home.html

    -------------------------------------------

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

    主页地址:http://www.xxframework.org/

    -------------------------------------------

    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:


    主页地址:https://equinox.dev.java.net/

    -------------------------------------------

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

    主页地址:https://facelets.dev.java.net/

    -------------------------------------------

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


    主页地址:http://www.millstone.org/

    -------------------------------------------

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

    主页地址:http://www.salmonllc.com/website/Jsp/vanity/Sofia.jsp

    -------------------------------------------

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


    主页地址:http://www.springside.org.cn/

    -------------------------------------------

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

    主页地址:http://grails.codehaus.org/

    -------------------------------------------

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

    主页地址:http://waffle.sourceforge.net/

    -------------------------------------------

    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.tasian.net/

    -------------------------------------------

    Aranea项目简介信息
    Aranea是一个开源,面向组件,事件驱动的Java MVC Web框架。它提供一种通用简单的方式来构建Web应用程序组件,复用自义定或一般的GUI逻辑,扩展该框架。Aranea强调必须使用POJOs面向对象的技术,并且提供一个Jsp标签库来帮助开发web GUI界面。

    主页地址:http://araneaframework.org/

    -------------------------------------------

    2step项目简介信息
    2step是一个用于开发完整Web应用程序(包括web服务)的框架。作为一个Servlet框架,它的特性有:访问控制、logging、I18N、数据库访问,XML/XSL支持等,还用到Jetty,FOP和jCharts开源项目。该框架提供一个用于辅助开发的Eclipse插件。

    主页地址:http://www.zentense.com/2step

    -------------------------------------------

    Rhino in Spring项目简介信息
    Rhino in Spring这个项目把Rhino JavaScript解释器与Spring框架相结合。目的是提供一个把脚本(动态)语言快速开发的优点、灵活与Java平台和Spring框架的强大功能、高扩展性相结合的系统。这个项目发布了一个Spring MVC控制器(controller)组件用于把由Web应用程序多个web页面生成的复杂控制流用JavaScript表示成单一结构的工作流。

    主页地址:http://rhinoinspring.sourceforge.net/

    -------------------------------------------

    Pushlets项目简介信息
    Pushlets是一个基于HTTP的发布/订阅框架,它实现了一种能够直接从服务端Java对象主动发送数据给浏览器端的HTML页面而不需要使用Java applets或插件的机制。这个框架当前使用两种方式实现:1.在servlet或jsp中将Javascript代码以流的形式传递给一个隐藏的frame。2.采用AJAX实现。

    主页地址:http://www.pushlets.com/

    -------------------------------------------

    jsf-comp项目简介信息
    jsf-comp一组JSF组件:

    主页地址:http://jsf-comp.sourceforge.net/

    -------------------------------------------

    jbullet项目简介信息
    jbullet一个基于约定俗成没有XML的Java开源web框架,保持简单是它的原则,Struts是它的灵感,RubyOnRails是它的挑战。jbullet之所以简单是因为你所要做得只是编写简单的Java classe然后把剩下的交给该框架。约定俗成是驱动因素,JSP标签库是标准HTML标签的一个镜像,控制流非常流畅和明了。

    主页地址:https://jbullet-web.dev.java.net/

    -------------------------------------------

    ROMA项目简介信息
    ROMA是一个完全基于POJO的Web框架。整个框架采用Ruby On Rails的设计思想,利用该框架能够实现Ajax数据库Web Apps的快速开发。


    主页地址:http://romaframework.xwiki.com/

    -------------------------------------------

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

    主页地址:http://struts.apache.org/struts-shale/

    -------------------------------------------

    Wicket Stuff项目简介信息
    这是一个把第三方组件集成到Wicket Web组件框架中的开源项目。这个项目当前提供的组件包括:


    主页地址:http://wicket-stuff.sourceforge.net/

    -------------------------------------------

    Wedge项目简介信息
    Wedge是一个基于POJO面向组件的Web框架。它利用运行期代码生成和习惯命名来简化Web应用的开发。Wedge页面模板是包含一些关键字的简单xhtml文档与页面相对应的后台类是没有层次之分POJO。在运行期,wedge会生成并编译一个第三方class,这个class与页面模板和页面后台类相绑定。这个自动生成的class是在一个单独的class loader中加载,所以当页面模板或页面后台类变化时将被丢弃。Wedge在运行期能够重新加载模板和页面类的java源代码,这意味着你可以随意你页面类的java源代码(新增,修改,删除或重命名方法和属性),然后只要刷新浏览器就可以看到修改后的结果。

    主页地址:http://wedge.sourceforge.net/

    -------------------------------------------

    OpenBlueLab项目简介信息
    OpenBlueLab是一个用于构建Web2.0 Portal系统的快速开发框架。其主页就是采用该框架开发的一个Demo。Portal布局可以通过UI进行配置。Widget将自动组装,在运行期不需要编写任何数据库交互代码就能够使它们自动实现数据感知。基于Ajax与HTML的form也将从XML widget定义自动构建。XML widget定义可以从描述信息系统设计的UML模型快速生成。这个框架让你只需关注信息系统的设计,而form和portal的系统架构将自动生成。

    主页地址:http://www.openbluelab.org/
    展开全文
  • 12月份GitHub上最热门的Web开源项目

    千次阅读 2019-01-24 15:32:01
    在过去的一个月里,mybridge对将近200个Web开发开源项目排名,mybridge根据各种因素,对项目进行比较,并从中精选出前10位。 上榜开源项目所获得Star数平均为:5550 1Quicklink ... ...quicklink 是一个通过预加载资源...
  • web开源FlowPlayer视频播放器

    千次阅读 2014-11-06 16:33:10
    最近项目中需要添加播放视频的功能,视频文件是flv格式的。在网上找了一些jQuery视频播放插件,还是觉得“flowplayer”要好一些。特将使用方法记录一下。 ... ... 一. 介绍:Flowplayer支持播放flv、swf
  • 目前h5三方库很少,开源的也很少,比较主流点的就是AgentWeb和腾讯x5的一个Web库(AgentWebX5)。最近花了几天时间阅读AgentWeb源码和Demo。 分别从一下几点来说下感受: 1学习其中的技术和实现: (1)继承自WebView...
  • web开发中常常会遇到视频等媒体视频播放的问题,那么就需要一个好用的媒体播放器来提供基础技术支持,而clappr就很好的满足了我们的要求,它是一个Javascript实现的可扩展的Web媒体播放器,功能非常强悍,你可以在...
  • Mail Web开源版(邮件系统客户端)

    热门讨论 2009-03-03 10:32:41
    基于B/S的邮件系统客户端软件,Web页面mail实现邮件的收发版本支持各种邮件服务器的b/s版邮件收发软件
  • Webmin是目前功能最强大的基于Web的Unix系统管理工具。管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作。目前Webmin支持绝大多数的Unix系统,这些系统除了各种版本的linux以外还包括:AIX、HPUX、...
  • 下面是一个Web应用的开源列表。没什么可说的,太疯狂了。尤其是Web 2.0那一堆。我不知道你怎么想,有些开源项目的源码写得挺不好的,尤其是性能方面。或许你会以为改一改他们就可以成为为自己所用,不过,改这些开源...
  • 1.InfoGlue infoglue是一个高级的、可扩展的、健壮的内容管理系统,完全用Java开发。重要的功能包括完全支持多...Magnolia是一个开源基于Java的Web内容管理系统(CMS) ,构建在Java内容知识库标准(JSR-170).Magnoli
  • MiniWeb开源的迷你HTTP服务器端软件

    千次阅读 2009-10-22 16:50:00
    MiniWeb是一个用C语言写成的HTTP服务器端软件,具有资源占用少、响应快速、跨平台(POSIX 、*nux、Windows)等优点,支持常用的GET、POST算法及音/视频流媒体应用,可用来构建WEBSITE站点或VOD服务器等。 官方站点...
  • 优秀的Web开源报表工具Cewolf上手

    千次阅读 2008-02-25 12:27:00
    配置环境:1.首先下载cewolf包,我用的是1.0版本;2.解压缩后,把/lib里的如下jar包拷到web工程的/WEB-INF/lib目录; jfreechart-1.0.0.jar jcommon-1.0.0.jar commons-logging-1.0.4.jar cewolf-1.0.jar batik-xm
  • 强大的Web开源测试工具—Selenium

    万次阅读 2006-06-30 10:37:00
    介绍Selenium 是 ThoughtWorks 专门为 Web 应用而开发的自动化测试工具,适合进行功能测试、验收测试,其最大的优势有几点: 可直接运行在浏览器之上,所见即所得,就像真实用户所做的一样。Selenium 的核心,也称 ...
  • 开源TMS团队协作web系统

    千次阅读 2017-05-15 16:02:02
    TMS是开源的团队协作(沟通,博文,国际化翻译)web开源系统(响应式界面设计,移动端适配). 试玩: http://tms000.sh1.newtouch.com/page/index.html 账号: admin/88888888 user/88888888 oschina推荐上榜的国产软件: ...
  • Java开源Web服务器

    千次阅读 2010-11-15 12:55:00
    Java开源Web服务器
  • web2.0开源

    千次阅读 2007-04-12 12:26:00
    http://blog.donews.com/yanhui/archive/2006/05/17/873226.aspx如今web2.0在互联网上发展迅速(这里提到的web2.0不包括blog,wiki),但出于利益的考虑,很多都考虑商业化运作和商业化发布,鲜少有web2.0的开源项目,...
  • golang web相关开源项目

    千次阅读 2017-02-22 23:11:03
    花时间了解一下guthub的golang web相关开源项目,在此总结一下,方便以后查找 beego,最初接触的web framework,文档齐全,可以在知乎上了解一下大牛对beego的评价,link gorilla,提供各种golang组件,用过其...
  • webERP开源系统安装配置

    千次阅读 2019-05-29 15:41:13
    webERP开源系统安装配置github地址环境需求--lnmp一、硬件要求二、软件要求环境搭建yum安装环境php配置配置数据库配置apache安装webERP github地址 https://github.com/webERP-team/webERP 该地址下载webERP 源码...
  • connect-web开源blog系统是一个java开源项目,通过了强大的功能,下面简单介绍一下怎样导入该系统 1、下载connect-web-version.war和connect-source-version.tar.gz。 2、解压concect-source-version.tar.gz,在...
  • Web 应用开源项目大全

    千次阅读 2013-09-14 20:02:48
    下面是一个Web应用的开源列表。没什么可说的,太疯狂了。尤其是Web 2.0那一堆。我不知道你怎么想,有些开源项目的源码写得挺不好的,尤其是性能方面。或许你会以为改一改他们就可以成为为自己所用,不过,改这些开源...
  • web前端开源库汇总

    千次阅读 2016-11-17 10:31:32
    web前端一些库的汇总
  • 疯狂的Web应用开源项目

    千次阅读 2015-01-13 18:48:04
    下面是一个Web应用的开源列表。没什么可说的,太疯狂了。尤其是Web 2.0那一堆。我不知道你怎么想,有些开源项目的源码写得挺不好的,尤其是性能方面。或许你会以为改一改他们就可以成为为自己所用,不过,改这些开源...
  • 开源Web会议系统

    千次阅读 2016-06-02 10:02:39
    个人试过bbb ,bigbluebutton蛮好的。http://www.cnblogs.com/ustcyc/p/3571407.htmlhttp://blog.sina.com.cn/s/blog_51396f890102vik3.html

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 286,257
精华内容 114,502
关键字:

web开源