您的位置:首页 > 编程语言 > Java开发

SSH的整合,Spring与Hibernate整合,与Struts2整合,ssh整合

2015-09-04 13:11 447 查看
前言,Spring管理实务,Hibernate控制持久层,Struts控制action层

一,Spring和hibernate的整合

导入Hibernate的jar包,在Hibernate文件夹下的 lib的required文件夹下。

导入Spring的jar包,在Spring的文件夹自行找(以上两个框架请自行上网下载

1、导入hibernate的包和Spring的包

1.1、导入Spring的依赖包

1.2、导入Log4j的依赖包

1.3、导入dbcp的依赖包

1.4、导入Hibernate4的依赖包(require文件中的所有,slf4j-api.jar,jpa文件夹中的包)

二,写spring的beans.xml。

使用spring来管理hibernate最主要的就是让Spring来管理SessionFactory。



三、在beans.xml中加入spring的事务控制代码



集成hibernate3和4有一定的区别,一下的内容以分开写

Hibernate3:beans.xml





Hibernate4:beans.xml:







其实都差不多,只是有小部分改动,三跟四就改那个HibernateTemplate模板类。

然后只是我在4的aop提高了点性能而已,不是每个方法都加入事务管理

这里还要提到一点就是session的关闭,之前单用Hibernate要自己关闭session,由于

延迟加载的问题,就会导致报session已关闭的错误,所以我们可以在视图层关闭

session(Spring的OpenSessionInView,

1、在表示层开启Session

需要在表示层获取Spring的工厂,以此获取Hibernate的SessionFactory

2、在DAO层获取表示层的session

如果希望在DAO层获取表示层的数据,应该将要获取的数据存储到ThreadLocal

3、当整个过程执行完毕之后再关闭session

3.1需要通过Filter来解决问题

3.2通过ThreadLocal来处理session

我就不贴代码了

好了,下面是Struts2的了

在上面 的基础上,我们来整合Struts2

首先,导Struts2的包,在src下建一个Struts的xml文件

1、导入Struts2的包(导入之后检查一下是否存在有冲突的包)

2、导入Struts2和Spring的整合包(struts2-spring-plugin-2.3.24.jar,在Struts的lib中找)

3、配置Struts2的struts.xml文件





4、创建action

/**

* 此时等于用Spring来创建了userAction对象,在struts的配置文件中写action的

*class的时候

* 就不能写类,而应该是userAction中对象

* @author Administrator

*

*/

@Controller("userAction")

5、在web.xml中配置获取BeanFacotry的操作



OK测试的话,我就不演示了。本人也是新手,刚学,如有错误希望指教。这里把ssh三个框架的环境大概的搭建了起来。

不过最好的话还是用上Springmvc而不用Struts2(学完Springmvc后的个人感觉

在测试过程中会遇到各种奇奇怪怪的错误。慢慢找,谷歌百度,关于这篇文章,有问题也可以跟我讨论,guin_guo@yahoo.com

.
---------------------------------------------------------------转载无需注明出处 by guin_guo
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: