来自:http://www.jybase.net/wangzhanbiancheng/20120722970_2.html
SSH 就是流行的基于 J2EE 的架构方案之一 SSH 在 J2EE 项目中表示了3种框架,即 Spring+Struts+Hibernate 1SSH框架技术 Struts 是最早的 Java 开源框架之一,该框架是基于 Model 2 的架构,也就是基于 MVC 模式的框架技术 它是一个免费 的开源的 Web 层的应用框架,具有很高的可配置性,和有一 个不断增长的特性列表 一个前端控制组件,一系列动作类, 动作映射,处理 XML 的实用工具类,服务器端 JavaBean 的 自动填充,支持验证的 Web 表单,国际化支持,生成 HTML, 实现表现逻辑和模板组成了Struts 的灵魂 Spring 是一个开源框架,为简化企业级系统开发而诞生的 轻量级解决方案,它致力于 J2EE 应用的各层的解决方案,而 不仅仅专注于某一层的方案,可以说 Spring 是企业应用开发 的 一站式 选择,并且可与其他已有的框架无缝地整合 Hibernate 是一个优秀的持久化框架,负责简化将对象数 据保存到数据库中或从数据库中读取数据并封装到对象的工 作 通过简单的配置和编码即可替代 JDBC 繁锁的程序代码 换句话说,它是 Java 应用和关系数据库之间的桥梁,它负责 Java 对象和关系数据之间的映射 Hibernate 内部封装了通过 JDBC 访问数据库的操作,向上层应用提供了面向对象的数据 访问API SSH 即 Struts+Spring+Hibernate,网站采用基于 MVC 模式 的 J2EE 体系结构,实现 B/S 的多层 Web 应用,即分为表示 层 业务逻辑层 数据持久层以及数据库层 每层在应用程 序中都有明确的责任 Spring,Hibernate,Struts 合理配置组 合,使分层灵活清晰,增强了系统的可重用性和可维护性, 如图 1 所示 2 开发工具选择 ![]() MyEclipse,Deamweare,选择 SQLServer2005 作为后台的 数据库,选择 Java JSP JavaScript HTML 作为应用程序开 发工具,运用 Tomcat 服务器技术,整个系统完全基于 B/S (Browser/Server) 模式进行设计 Tomcat 是其中较为流行的一个 Web 服务器,Tomcat 是一 个免费的开源的 Serlvet 容器,应用程序的部署很简单,只需 将 WAR 放到 Tomcat 的 WebAPP 目录下,Tomcat 会自动检测 到这个文件,并将其解压 在浏览器中访问这个应用的 JSP 时,通常第一次会很慢,因为 Tomcat 要将 JSP 转化为 Servlet文件,然后编译 编译以后,访问将会很快 Tomcat 也具有传统的 Web 服务器的功能:处理 HTML 页 面 但是与 Apache 相比,它的处理静态 HTML 的能力就不如 Apache 可以将 Tomcat 和 Apache 集成到一块,让 Apache 处 理静态 HTML,而 Tomcat 处理 JSP 和 Servlet Tomcat 是一个 很好的工具,不仅仅因为其免费,功能强大,更因为其开放 性,越来越受到人们的重视 B/S 模式开发成本及维护成本降低 由于 B/S 架构管理软 件只安装在服务器端(Server )上,即应用程序在部署 升 级 维护时,只需要在服务器端进行配置就可以了,网络管 理人员只需要管理服务器就行了,用户界面主要事务逻辑在 服务器(Server )端完全通过 WWW 浏览器实现,极少部分事 务逻辑在前端(Browser )实现,所有的客户端只有浏览器, 网络管理人员只需要做硬件维护 良好的安全性能,防火墙 技术可以保证后台数据库的安全性 所有的配置工作都集中 在服务器端且所有客户端请求都是通过 DBMS 来访问数据库, 从而大大减少了数据直接暴露的风险 3 总体设计 3.1 功能模块 注册登录模块:该模块实现用户的注册及登录验证功能 网站主页模块:根据网站设计要求设计内容,如:企业 文化模块 商家店铺模块 站内新闻模块 企业机构模块 友情链接模块 查看留言模块等 后台管理模块:后台管理模块用于实现管理员对主页及 相关信息的动态管理 以上模块,管理员可以对主页中的内容进行增加或修改, 包括内容更新 添加新项目及留言管理等功能,从而达到对 信息进行维护和管理 3.2 代码实现 基于 Struts 构架的表示层实现:表示层是由 Struts 实现, 基于 XML 的配置文件 Struts-config.xml 将模型 视图 控制 器联系起来 它将从页面接收到的请求按 FormBean 的格式将 其封装成一个 Form 对象,根据业务流的逻辑决定交给地合适 方法实现业务流的转向,处理完的数据返回给控制器,控制 器将数据封装成 Form 对象,根据业务流决定是交给下一个业 务逻辑进行处理还是返回到页面 控制器是按 struts-config. xml 文件中的配置来决定业务流的转向的,struts-config.xml 的 部分代码如下: <struts-config> <data-sources/> <form-beans> <form-beanname="loginForm"type="com.struts. form.LoginForm"/> </form-beans> <action-mappings> <action parameter="operate" attribute="loginForm" name="loginForm" path="/userAction" scope="request" > <forwardname="index"path="/index.jsp"/> <forwardname="success"path="/success.jsp"/> <forwardname="error"path="/error.jsp"/> <forwardname="r_success"path="/r_success.jsp"/ > <forwardname="register"path="/register.jsp"/> </action> </action-mappings> <controller> <set-propertyproperty="processorClass"value=" org.springframework.web.struts.DelegatingRequestProcessor" /> </controller> <message-resourcesparameter="com.struts. ApplicationResources"/> <plug-inclassName="org.springframework.web.struts. ContextLoaderPlugIn"> <set-propertyproperty="contextConfigLocation" value="classpath:applicationContext.xml"/> </plug-in> </struts-config> 4 结语 网站以开源框架 Spring 框架为核心,向下整合 Hibernate 进行持久层访问,向上整合 Struts 按清晰的 MVC 模式控制, 清晰地划分了应用的层次,提高系统灵活性,降低了维护成 本 通过实体关系映射工具将关系型数据库的数据映射成对 象,很方便地实现以面向对象方式操作数据库,该系统采用 Hibernate 作为 ORM 框架 Spring 的作用贯穿了整个中间层, 将 Web 层 Service 层 DAO 层及 PO 无缝整合,其数据服务 层用来存放数据 通过使用 Hibernate 持久层,可以避免使用 传统的 JDBC 操作数据库,对 JDBC 进一步包装,从而更好地 使用面向对象的方式来操作数据库 保证了整个软件开发过 程以面向对象的方式进行 利用 Struts+Spring+Hibernate 框架开发网站,使网站具有 良好的可维护性和可扩展性。 |