基于 FreeMarker+WebWork+Spring 架构的 Web 应.doc
《基于 FreeMarker+WebWork+Spring 架构的 Web 应.doc》由会员分享,可在线阅读,更多相关《基于 FreeMarker+WebWork+Spring 架构的 Web 应.doc(5页珍藏版)》请在三一文库上搜索。
1、基于 FreeMarker+WebWork+Spring 架构的 Web 应用研究梁广吉 东北大学东软信息学院计算机科学与技术系,辽宁大连(116023) E-mail:摘要:针对开发 Web 应用中多层开发的特点和可维护性、可扩展性的要求,介绍了三种 轻量级框架 FreeMarker,WebWork,Spring 的基本特征,并将这三种框架技术整合起来应用 到实际的 Web 项目开发中去。三种框架分别对应 web 应用开发中的三层,即用 FreeMarker 来架构我们的表示层,用 WebWork 来架构我们的控制层,而用 Spring 架构我们的业务层, 从而提高项目代码的复用性及项目开发
2、的效率,实现多层开发的低耦合。 关键词:框架;FreeMarker;WebWork;Spring中图分类号:TP3111引言面对日益复杂的软件规模,选择良好的开发框架对保证系统的成功至关重要。在传统 J2EE架构体系中,其业务层主要是靠业务组件EJB(EnterpriseJava Beans)来实现的。虽然EJB 一度被认为是J2EE的核心组件,但它是典型的重量级组件,具有部署复杂等缺点。与J2EE 重量级体系相对应,轻量级Web框架FreeMarker+ WebWork +Spring不仅保持了J2EE的优势 (例如事务管理),还简化了Web的开发。将Web应用分层,然后按层来选择框架,让框
3、架技 术的优点发挥在每一层中,即用FreeMarker来架构表示层,用WebWork来架构控制层,而用 Spring来架构业务层,然后把这些框架无缝地整合起来,应用到项目开发中来。2FreeMarker,WebWork,Spring框架简介2.1 FreeMarkerFreeMarker是一个模板引擎。模版技术应用的场合很多,例如代码生成,XML文件生成, 而其最主要的作用还是应用于VIEW层的HTML代码生成。使用Freemarker的MVC框架有 Webwork,SpringMVC,Struts2.0等等。虽然FreeMarker具有一些编程的能力,但通常由Java 程序准备要显示的数据,
4、由FreeMarker生成页面,通过模板显示准备的数据。-1-Template FileHello $name!.Java objectsOutput Hello Word!data.name= Word图1 FreeMarker工作机制zFreeMarker 不是一个 Web 应用框架,而适合作为 Web 应用框架一个组件。zFreeMarker 与容器无关,因为它并不知道 HTTP 或 Servlet;FreeMarker 同样可以应用于非 Web 应用程序环境。zFreeMarker 更适合作为 Model2 框架(如 Struts)的视图组件,也可以在模板中使 用 JSP 标记库。2.
5、2 WebWorkWebWork1由 OpenSymphony 组织开发。致力于组件化和代码重用的拉出式 MVC 模式 J2EE Web 框架。WebWork 框架扩展了传统的 MVC 设计模式,这个框架的原理图如图 2 所 示:ClientRequestRefreshView-5-DispatcherViewExecuteControllerRenderChangeModelModel图2 WebWork框架原理图WebWork实际上是一个Front Controller设计模式的实现。它通过一个Dispather对象把客 户端发送的URL请求映射到一个命令对象(由Xwork里的Action
6、对象实现)中,该命令对象在 后台完成与系统内部模型的交互,并根据处理后的返回结果把控制权映射到某一具体的视图 (通常用JSP表示),最后在视图层根据表达式语言OGNL对更新后的结果进行显示。相对于传 统MVC架构,WebWork具有下列优点:(1)支持AOP,可以方便地配置前端拦截器(interceptor)统一地处理异常事件流。 (2)支持多视图表示,视图部分可以使用JSP,Velocity,FreeMarker,JasperReports等。 (3)测试独立于Servlet容器,WebWork2已经被拆分成与Servlet容器相关的WebWork和核心的Xwork两部分,对于一般开发需要使
7、用的JUnit测试只需使用Xwork。(4)插件的支持。WebWork的插件应归功于其拦截器(AOP编程),它的很多功能框架都是 通过拦截器来组装的(如验证、国际化、IoC等),并且与其它项目的集成也更加容易。2.3 SpringSpring是一个应用于J2EE领域轻量的、功能强大的、灵活的应用程序框架,以提供快速 的Java Web应用程序开发,同时Spring还提供了以其它各种MVC框架或视图技术的集成。 Spring具有下列优点:(1)支持IoC2和AOP,更容易实现复杂的需求;(2)支持事务管理,提供了比EJB CMT更加强大、高效的编程模型可以很容易的实现 支持多个事务资源;(3)支
8、持JMS、JMX和JCA等技术,更方便访问EJB;(4)支持JDBC和ORM等技术进行数据访问。有了Spring框架,使用简单的JavaBean就可以实现以前只有EJB才能实现的功能。不只 是服务器端开发能从中受益,任何Java系统开发都能从Spring的简单、可测试和松耦合特征 中得到好处3 。图3 Spring框架的7个模块Spring框架4由7个模块组成(如图3),所有的模块都是建立在核心容器上的,核心容器 定义了创建、配置和管理Bean的方式。此外Spring还提供了AOP的支持、JDBC的提取框架 和抽象事务支持等等。3三种框架的集成网络教学平台系统复杂,采用传统方式开发容易将用户请
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FreeMarker+WebWork+Spring 架构的 Web FreeMarker WebWork Spring 架构
链接地址:https://www.31doc.com/p-3624707.html