Spring Struts2+Spring3+Hibernate3整合(五)

本文详细介绍了Struts2、Spring和Hibernate的整合方法,包括基于XML和基于注解的整合。基于XML整合时,分别搭建各框架开发环境,再进行两两整合;基于注解整合时,利用注解搭建Struts2环境,将Spring加入Web应用,最后整合Hibernate,还提及了事务管理等要点。

在这里插入图片描述
5.1基于XML的整合
1、搭建struts2的开发环境
a、拷贝必要的jar包
在这里插入图片描述
b、在classpath下建立struts2的默认配置文件
在这里插入图片描述
c、配置核心控制器
修改web.xml
在这里插入图片描述
d、编写测试
不通过不要往下做

2、搭建Spring环境
a、拷贝spring的jar包
core:4个
aop:
jdbc:
web:
在这里插入图片描述
去掉重复的jar包:
com.springsource.org.apache.commons.logging-1.1.1.jar
b、让spring容器管理资源,启动一次(在JavaWeb应用中使用Spring)

每一个JavaWeb应用在启动时都会创建ServletContext(且创建一次)

1、在WEB-INF目录下简历一个默认名称的spring配置文件:applicationContext.xml
在这里插入图片描述
2、配置监听器 web.xml
在这里插入图片描述
3、获取Spring中提供的对象
在这里插入图片描述
3、struts2整合spring
方式一:
原理:动作类中如果需要用到业务对象,没有去spring容器中要Service对象

拷贝struts2-spring-plugin-2.3.15.3.jar到WEB-INF\lib目录中

动作类中用到Service,按照名称(默认)进行注入的。

方式二:
动作类本身也交给Spring容器管理
在这里插入图片描述
在这里插入图片描述

4、搭建Hibernate的开发环境
a、拷贝必要的jar包:
在这里插入图片描述
去掉重复的jar包:javassist-3.11.0.GA.jar
b、在classpath下建立Hibernate默认的配置文件
在这里插入图片描述
c、建立一个测试实体类
在这里插入图片描述
d、像学习Hibernate时一样,编写一个测试类

测试不通过,不要往下做
在这里插入图片描述

5、spring整合hibernate
原理:Hibernate的SessionFactory交给Spring接管

不管方式一还是方式二:必须配置事务管理器,采用AOP思想

方式一:Spring引入式整合
解释:hibernate原来的东西不变,Spring接管SessionFactory
在这里插入图片描述

DAO编写:
在这里插入图片描述

方式二:Spring完全接管Hibernate
解释:原来hibernate的配置文件(没有必要存在)信息定义在Spring配置文件中删除原来的hibernate.cfg.xml配置文件
在这里插入图片描述
5.2基于注解的整合
jar包、配置文件,基于前面xml的配置
1、搭建struts2的开发环境:利用注解
a、拷贝所有的jar包到WEB-INF/lib目录下
b、web.xml配置核心控制器
c、classpath下建立struts.xml配置文件,内容如下:
注:struts.xml可以不要了,或者留着,把原来的配置信息删掉。
在这里插入图片描述
d、新内容:
要想struts2能使用注解进行配置,需要添加一个新的jar包到WEB-INF\lib目录中:
struts2-convention-plugin-2.3.15.3.jar

约定:动作类要放在以下包中,struts2框架只会搜索以下包中动作类的注解
action,actions,struts,struts2

e、动作类的编写:常用注解
在这里插入图片描述

2、spring加入到web应用中
a、在WEB-INF目录下建立applicationContext.xml默认配置文件
b、让spring管理bean资源
在这里插入图片描述
c、把动作类、业务实现、dao实现交给spring管理
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
d、spring容器在web启动时就启动
web.xml配置监听器
在这里插入图片描述
3、整合hibernate
hibernate和JPA的关系:
在这里插入图片描述
引入式整合
在这里插入图片描述
在这里插入图片描述

DAO实现的编写:
在这里插入图片描述
在这里插入图片描述

加上事务:采用注解
在这里插入图片描述

业务接口:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值