SSH技术方案_ssh框架开发技术详解

2020-02-27 其他范文 下载本文

SSH技术方案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“ssh框架开发技术详解”。

基于Struts2+Spring+Hibernate实现轻量级企业式开发技术方案

一. 技术平台

J2EE是Java2平台企业版(Java 2 Platform Enterprise Edition)

J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。

J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如“编写一次、随处运行”的特性、方便存取数据库的JDBC API、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。

J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。[1]

二. 轻量级J2EE架构

目前 J2EE 应用中,由于应用需求不同,架构设计上分成两种设计方式,即重量级J2EE架构和轻量级J2EE架构。银行,电信,大型企业的业务系统逻辑复杂,结点分布广泛,且普遍使用了物理上多层架构,事务要求性极高,对系统的稳定性要求也是极高的,因此大多数使用重量级的EJB开发架构。

一般的中小型应用系统,所关注的是访问速度与快速响应市场需求变化,强大的系统缓存功能,传统的大型分布式J2EE架构就显得不太合适。本系统的开发基于 J2EE 的轻量级多层架构,即业界比较成熟的 Struts2 + Spring + Hibernate 框架: Struts2实现 MVC 最为成熟的框架之一,在 J2EE 项目中应用广泛; Spring 可以实现对 Hibernate 的无缝链接,适用于业务处理层;在数据持久层中,采用Hibernate 这一功能强大的 ORM 映射工具。

J2EE的三层结构在业界是指表示层(Presentation),业务逻辑层(Busine logic)以及基础架构层(Infrastructure)。一个最常用的扩展就是将三层体系扩展为五层体系,即表示层(Presentation)、控制/中介层(Controller/Mediator)、领域层(Domain)、数据持久层(Data Persistence)和数据源层(Data Source)。它其实是在三层架构中增加了两个中间层。控制/中介层位于表示层和领域层之间,数据持久层位于领域层和基础架构层之间。而轻量级架构Struts2 + Spring + Hibernate可以实现J2EE多层结构,Struts2用于表示层、控制层,Spring 用于业务处理层,而Hibernate用于数据持久层。[2] 三. 应用部署架构

1.Web服务器架构

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP规范总是能在Tomcat 中得到体现。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Tomcat 是一个轻量级应用服务器,它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行Tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。2.系统数据库 MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。

四. 主要技术方案

1.表示层、控制层

表示层是整个架构中最活跃的分层,由WEB服务器及其组件构成,主要用于处理客户端的请求、响应业务层组件的请求。表示层引入了基于组件开发的Struts开源框架,采用Servlet与XML等技术实现,具有良好的可伸缩性和稳定性,降低了系统开发的复杂度、提高了开发效率。

Struts:可用于快速开发JAVA WEB应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProceor和开发人员定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。Struts没有涉及M(Model),所以Struts可以调用JAVA实现的任何形式的业务逻辑组件。2.业务层

在的项目开发中,每个领域都会有自己独特的业务逻辑,由此使项目中代码高度耦合,原本有可能被重用的代码或功能,因为与具体的业务逻辑绑定在一块而导致很难被重用。因此我们将实现这些具体逻辑的代码抽取出来分为单独的一层,其目的是希望通过层,来降低它与系统其他部分的耦合度。现实中世界是变化的,既然该层实现的是现实中具体的业务逻辑,那该层的实现代码不可避免的会发生变更。怎样让该层适应最大的变化,做到最小的改动?通常我们在编码的时候会尽量考虑到同一业务多种实现的兼容和可扩展的能力。因此我们在该层借助了Spring,通过依赖注入、AOP应用、面向接口编程,来降低业务组件之间的耦合度,增强系统扩展性。

IOC(Inversion of Control),译作反转控制,其功能是将类之间的依赖转移到外部的配置文件中,避免在调用类中硬编码实现类,因此也被称作依赖注入(Dependency Injection)。在以往的开发中,通常利用工厂模式(Factory)来解决此类问题,其实不管是工厂模式还是依赖注入,调用类与实现类不可能没有任何依赖,工厂模式中工厂类通常根据参数来判断该实例化哪个实现类,Spring IOC将需要实例的类在配置文件文件中配置。使用Spring IOC能得到工厂模式同样的效果,而且编码更加简洁。3.数据持久层

Hibernate是一个ORM工具,它不仅仅是实现了数据库访问性能优化和与数据库交互的常用操作(CRUD),还将数据表与对象进行了关联,让开发人员可以脱离数据表,而直接针对对象来与数据库交互,开发人员不再需要用字符串去描述表中字段,这使得编码中可书写性提高。

在本系统中已经抽象出了一个CRUD DAO组件基类,利用JDK5.0的泛型技术,每个继承此组件基类的DAO都持有自身的持久对象类型,非常方便操作。在此基类中涵盖了大多数数据库操作方法,如CRUD,分页,属性查询等。[3]

参考资料

[1] J2EE[EB] 百度百科http://baike.baidu.com/view/1507.htm [2] J2EE中三种框架Spring + Struts +Hibernate [EB] 百度百科http://baike.baidu.com/view/16184.htm#sub5909255 [3] 李刚.轻量级Java EE 企业应用实战 Struts2+Spring3+hibernate整合开发[M] 北京:电子工业出版社,2012

《SSH技术方案.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
SSH技术方案
点击下载文档
相关专题 ssh框架开发技术详解 方案 技术 SSH ssh框架开发技术详解 方案 技术 SSH
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文