Struts、Hibernate和Spring的轻型J2EE架构的研究

关键词 Struts,Hibernate,Spring,用户管理

一、特性

1. Struts与MVC

Struts是Apache Jakarta项目的组成部分。该项目的目标是为建立Java Web 应用程序而提供的一个开源

框架。通过使用Struts框架可以改进和提高Java Server Pages (JSP)、Servlet、标签库以及面向对象

技术在Web应用程序中的应用。Struts是MVC的一种实现,它很好地结合了Jsp,Java Servlet,JavaBean

,Taglib等技术。MVC即Model-View-Controller的缩写,它是Web应用中常用的设计模式。MVC减弱了业

务逻辑接口和数据接口之间的耦合,同时让视图层更富于变化。

控制器(Controller)的作用是从客户端接受请求,并选择执行相应的业务逻辑,然后把响应结果送回

到客户端。在Struts中Controller由ActionServlet类和Action类实现,ActionServlet主要负责接受

HTTP请求,Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程。

视图层主要是由JSP来实现页面显示。它接收到JavaBean和Action Form中的数据,利用html,taglib,

bean,logic等标签显示数据。

在Struts中,主要存在三种bean,分别是:Action,ActionForm,EJB或者Java Bean。ActionForm用来封

装客户请求信息,Action取得ActionForm中的数据,再由EJB或者JavaBean进行处理。

2. Hibernate

Hibernate是一个开源的对象关系映射框架,它对JDBC进行了轻量级的对象封装, Java程序员可以使用

面向对象的方式来操作数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端的程

序中使用,也可以在Servlet/JSP的Web应用中使用。Hibernate的目标是成为Java中管理持续性数据问题

的一种完整的解决方案。它协调应用与关系数据库的交互,让开发者解放出来专注于业务问题。

3. Spring

Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。它提供了管理业务对象的一致方法并且

鼓励对接口编程而不是对类编程的习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of

Control容器,数据访问架构集成了Hibernate和其他O/R mapping解决方案,同时提供了对Struts的支持

二、分层架构

分层设计思想是软件设计中的一个重要的设计思想,对于Web应用程序的设计也是如此。通过分层可以提

高系统的可扩展性,另外还有利于分工协作。本文给出一种基于Struts、Hibernate和Spring这三种框架