SSH集成框架文献综述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单位代码01

学号*********

分类号TP312

密级

文献综述

SSH集成框架业务逻辑的实现方法

院(系)名称信息工程学院

专业名称计算机科学与技术

学生姓名秦江辉

指导教师冯灵霞

2013年3月20

SSH集成框架业务逻辑的实现方法

摘要

SSH 是Struts+Spring+Hibernate的集成框架的简称,是目前较流行的一种Web应用程序开源框架。

Struts,Spring,Hibernate这三大框架在Web应用中不是孤立执行而是相互关联,相互支持的。这就使集成了SSH框架的系统在职责上的四层:表示层、业务逻辑层、数据持久层和域模块层密切联系,最大化地实现SSH集成框架的功能。本文重点从系统的业务逻辑层出发,深入的阐述SSH集成框架在系统中的业务逻辑实现方法。在各个层中功能交互,逻辑连接的实现方法。概述了业务逻辑,业务逻辑在系统中的具体表现以及它的特征和它在系统中经常出现的问题。在了解了业务逻辑的基本概念后,进入本文的核心内容:SSH集成框架业务逻辑的实现方法。

关键词:业务逻辑,SSH集成框架,Web,实现方法

目录

SSH集成框架业务逻辑的实现方法 (1)

1业务逻辑简述 (3)

1.1业务逻辑的概述 (3)

1.2业务逻辑的特征 (3)

2 SSH集成框架简述 (4)

2.1 Struts (4)

2.2 Spring (4)

2.3 Hibernate (4)

3 SSH集成框架业务逻辑的实现方法 (5)

结论 (8)

参考文献 (9)

1业务逻辑简述

1.1业务逻辑的概述

什么是业务逻辑?所谓业务逻辑就是业务规则:除了简单的增删改查的数据访问之外,还会涉及到一些复杂的功能流程和功能要求,这些被称为业务逻辑。就像在论坛用户注册:包括要向邮箱发送电子邮件:如果发送失败,则注册失败[1]。

1.2业务逻辑的特征

业务逻辑的特征:与数据操作的关系可能包含多次数据操作,可能同时包含数据操作和非数据操作,可能只有非数据操作。业务逻辑在维护方面的特征:在业务逻辑运行过程中表示策略的逻辑通常会经常修改。所以在实现业务逻辑的过程中我们会遇到很多需要解决的问题:多次数据操作时:如何使这些逻辑实现方法处于同一session 下,非数据库事务与数据库事务如何归整到同一事务,复杂的权限控制会置于业务逻辑中,如何优化这些繁琐的代码?.如何处理业务规则频繁变化?这些就是我们接下来介绍的SSH集成框架所要解决的问题[1]。

2 SSH集成框架简述

2.1 Struts

Struts是通过采用JavaServlet/JSP技术,实现了基于Java EE Web应用的MVC设计模式的应用框架。使用Struts可以减少我们在运用MVC设计模型来开发Web应用的时间。在服务器启动后,Struts根据web.xml加载ActionServlet读取struts-config.xml 文件内容到内存[3] 。

2.2 Spring

Spring是为了解决企业应用开发的复杂性而创建的。Spring是基于JavaBean来完成以前只可能由EJB完成的事情。Spring的用途不仅用于服务器端的开发,从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益[4] 。

2.3 Hibernate

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在JavaServlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的Java应用中。

3 SSH集成框架业务逻辑的实现方法

以上简单介绍了Struts,Spring,Hibernate它们各自的实现方式,然而将它们整合在一起,又是如何实现业务逻辑的呢?执行效果又如何呢?可想而知,整合后的框架会更强大,执行效率会更快。基于分开的三大框架,集成后的框架便是质的飞跃!

在实现业务逻辑时,Hibernate主要执行以下操作:首先通Configuration().configure() 读取并解析hibernate.cfg.xml配置文件,再由hibernate.cfg.xml中的读取并解析映射信息,然后通过config buildSessionFactory()代码以创建SessionFactory,再执行sessionFactory.openSession()打开Session,接下来执行session beginTransaction()创建Transaction事务,再通过persistent operate 实现持久化操作,最后通过session.getTransaction().commit()提交事务,然后关闭Session,关闭sesstionFactory。

在Hibernate实现了它所应负责的业务逻辑的同时还要处理一个很重要的问题:加载和缓存问题。那么Hibernate如何完成这些要求的呢?Hibernate通过如下操作延迟加载:在Hibernate2中通过操作实体对象和集合延迟加载;Hibernate3中提供了属性的延迟加载功能。

当Hibernate在查询数据的时候,数据并没有存在于内存中,当程序真正对数据进行操作时,对象才存在于内存中,这样实现了延迟加载,它节省了服务器的内存开销,从而提高了服务器的性能。最后谈论下Hibernate的缓存机制。首先介绍一些缓存的概念:内部缓存存在Hibernate中又叫一级缓存,属于应用事务级别缓存;应用缓存及分布式缓存称为二级缓存,其中分布式缓存是指:数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同一数据被频繁使用的缓存;最后还有三级缓存。接下来具体介绍一下各级缓存:一级缓存是session级的缓存也叫事务级的缓存,只缓存实体,生命周期和session一致,不能对其进行管理,不用显式地调用;二级缓存是sessionFactory缓存也叫做进程级缓存,使用第三方插件实现,也是只缓存实体,生命周期和sessionFactory一致,可以进行管理。其中用到了第三方插件,我们用EHCache 可以先在hibernate.cfg.xml文件中加入

相关文档
最新文档