JSP框架介绍

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 的支持,这支持?**菇ㄔ贒 WR 与 Dojo 这两个框架的基 础之上.【EclipseWork:用于 WebWork 辅助开发的一个 Eclipse 插件】 Struts Struts 是一个基于 Sun J2EE 平台的 MVC 框架, 主要是采用 Servlet 和 JSP 技术来实现的. 由于 Struts 能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注. Struts 把 Servlet,JSP,自定义标签和信息资源(message resources)整合到一个统一的框 架中, 开发人员利用其进行开发时不用再自己编码实现全套 MVC 模式, 极大的节省了时间, 所以说 Struts 是一个非常不错的应用框架. 【StrutsIDE: 用于 Struts 辅助开发的一个 Eclipse 插件】 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 技术进行开发. 【Spindle:Tapestry 辅助开发 Eclipse 插件】 . 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 下进行开发的插件 Echo Echo 是为用 Java 开发 Web 应用程序提供的一个面向对象,事件驱动的框架.使用 Echo 框架来编程类似于使用 Swing API 来开发应用程序或 applets . Turbine Turbine 是基于 Servlet 的框架包,也是开放源代码 Jakarta 项目.目前还没有关于 Turbine 的大量文档.它类似于 Struts,但是有一些主要区别.突出的一点就是它并没有与 JSP 耦 合.Turbine 的特点是它提供了大量可重用的组件.此框架包中包含了大量组件,但是这些 组件是离散的.它似乎应该给出更多的组件库,但是由于它缺少文档,所以很难掌握完整的 体系结构. MyFaces MyFaces 是 JavaServer(tm) Faces(JSF) Web 框架 (JSR 127)的一个实现. JavaServer(tm) Faces Web 框架是一个新的实现 MVC 模式的规范.它可以与 Struts 框架相媲美甚至的一些 特性与观念已经超过了 Struts.【FacesIDE:Eclipse 下的一个辅助开发插件】. JPublish JPublish 是一个功能强大的 Web 发布系统, 设计为确保开发者角色的清晰的分离. JPublish 支持多模板引擎,包括 Jakarta Apache's Velocity, FreeMarker and WebMacro.JPublish 支持众多脚本语言,包括 Python, BeanShell, and JavaScript. Japple Japple 是一个建造 Web 应用程序和服务的快速应用程序开发环境.Japple 在 Java2 平 台和开放标准之上建造, 和传统方法相比可以让你更快, 更容易, 更有效地开发和部署 Web 应用程序. Jaffa 是为快速应用程序开发提供的一个企业 Java 框架.JAFFA 是一个 Java Web 应 用程序开发框架,用基于 MVC 为基础的 Web 窗口部件来扩展现存的项目. Anvil Anvil 是一个基于 Java 的为 Web 程序开发的平台,独立或伺服式都是可部署的.它包括 大量功能齐全的面向对象的编程语言. 语言的一个子集也可用于一个以 tag 为基础的模板语 言.所有的脚本和模板都被汇编为 Java 比特代码. SiteMesh OS(OpenSymphony)的 SiteMesh 是一个用来在 JSP 中实现页面布局和装饰 (layout and decoration)的框架组件,能够帮助网站开发人员较容易实现页面中动态内容和静态装饰外 观的分离. 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 系统消息队 列的处理机制. 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 一体. 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 本身的属性数据)传递上去. Shocks Shocks 是一个开放源码的开发框架,目的是减少 Java Servlet 应用的复杂性.Shocks 并不是 MVC 模式的开发框架,而是采用下一代的体系结构,明确分开了内部各个组件的 角色. 该项目目前还不够成熟, 但值得关注. 这里只是简单介绍, 如果你要快速了解 Shocks, 请阅读 Shocks 的 FAQ,里面讲解了 Shocks 与 Struts,Webwork,Spring 的关系和差 异. WebCream WebCream 提供基于 Java 应用程序和 Applet 的 web GUI,允许开发人员利用 AWT 和 Swing 实现 GUI 前端应用程序,同时自动地使 HTML 访问该应用程序. AppFuse AppFuse 是一个集成了众多当前最流行开源框架与工具(包括 Hibernate,ibatis,Struts, Spring, DBUnit, Ant,Log4J, Struts Menu,Xdoclet,SiteMesh,OSCache,JUnit,JSTL) 于一身的 Web 开发框架.AppFuse 提供了 Web 系统开发过程中都需要开发的一些功能, 如登陆,用户密码加密,用户管理,根据不同的用户可以展现不同的菜单.J2EE 开发者也可 以在此基础上开发加入自己的功能模块.利用这个框架可以大幅度的提高开发速度. VRaptor2 VRaptor2 是一个 MVC 与 IOC 的 Web 框架.它采用了许多框的思想包括:JBoss Seam,Stripes,Webwork,Hibernate Annotations 等.VRaptor2 充分利用 Java5 注释使得可 以通过简单的方式来处理 Web 编程.你的商业逻辑类不需要与 javax.servlet API 联系,并且 与其它框架相比它只需要很少配置. Chrysalis Chrysalis 是一个 Java Web 开发框架.它有一个不同于大多数 MVC Web 框架的地 方.Chrysalis 的控制器类跟正常的 Java 类一样有着多个方法,客户端请求的 URLs 被映射到 这些控制器方法. Verge Verge 框架是一个开源 J2EE 应用程序框架完全采用 Java 开发只使用到标准的 J2EE APIs. 这个开源项目的目的为开发企业应用程序提供一个非常灵活和可扩展的框架. WebOnSwing WebOnSwing 是一个革命性的多环境应用程序框架.它允许你创建 web 应用程序并可用同 样的方式开发一个桌面程序.它不需要使用 Jsp 文件,特殊的标签,XML 文件, requests, posts 等,所有的都是 Java 与直接来自图形设计的 HTML 文件.这个框架使用 Swing 组件来构造和 处理 HTML 页面,并允许使用 MVC 设计模式.所有在 Web 上的工具都可以由 Swing 提供. 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 等. Wicket Wicket 一个开发 Java Web 应用程序框架.它使得开发 web 应用程序变得容易而轻松. Wicket 利用一个 POJO data beans 组件使得它可以与任何持久层技术相结合.一个结合 Eclipse 工具的 Demo 可以引导你如何利用 Wicket 来发开 Web 应用程序. Beehive Beehive 用于简化 Java 2 Platform, Enterprise Edition(J2EE)以及 Web 服务编程. Apache Beehive 支持以下功能: *Java Page Flow(JPF)技术,也称为(NetUI) *轻量级的组件框架 *基于 Java Specification Request(JSR)181 的 Web 服务 JSPWidget JSPWidget 是一个 Jsp 框架,它提供了事件驱动,视图状态保留(view state retained),服务端 GUI 控制来使得 JSP 开发能够像在传统的窗体客户端与基于客户端的 web 应用程序中一样 直观. JNex JNex 是实现 MVC 设计模式的纯 Java 框架.它可以使用三种视图(view):Swing,HTML,和 Canoo ULC. WFNM WebFlow Navigation Manager (WFNM)是一个轻量级的 Web 框架.它允许 WebFlow 定义, 服务端历史向导(navigation history),自动动 Session 清除.WFNM 框架把 web 应用程序分离 几个 WebFlow,服务端保持访问过的页面和 WebFlow 的历史记录,可以动态地返回到访问过 的页面与 WebFlow. 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 代码.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值