spring、struct、hibernate三大框架整合
2014-02-19 19:43
615 查看
一、运用环境:
Myeclipse、jdk1.70、Tomcat7.0、mysql
二、整合思路:
1.把Action交给Spring来管理。
2.把SessionFactory交给Spring来管理。
3.把Session打开与关闭交给Spring来管理。
4.把事务打提,提交、回滚交给Spring来管理。
三、整合:
1、创建web project,名为SSH。并新建一个名为res的source
folder,用于存放配置文件。
![](https://img-blog.csdn.net/20140219180629921)
2、将hibernate引人项目
(1)将Hibernate的jar导入项目(这里用的是hibernate3.5.6)
![](https://img-blog.csdn.net/20140219181009125)
注:其中log4j-1.2.9jar、slf4j-log4j12-1.5.10.jar、mysql-connector-java-5.17.bin.jar是额外包(前两个用于做日志,后一个用于连接数据库)
(2)将配置文件hibernate.cfg.xml引入项目的res 目录下(可在hibernate3.5.6中找到)
![](https://img-blog.csdn.net/20140219181756140)
(3)测试
新建数据库ssh,并在src中建一个名为test的package;新创建一个名为Test的类。Test类的代码如下:
![](https://img-blog.csdn.net/20140219182101125)
运行Test类,控制台中如果输出类似如下的语句,则表明测试成功。
org.hibernate.impl.SessionFactoryImpl@1649b44
(4)引人实体映射文件 hbm.xml -->@Entity(用户表为例)
a、建一个名为entity的package,并新建一实体类user,有id和name属性
![](https://img-blog.csdn.net/20140219182558390)
b、在entity包下引人映射文件User.hbm.xml(可在hibernate3.5.6中找到)
![](https://img-blog.csdn.net/20140219183418890)
c、在hibernate.cfg.xml中引人实体映射文件User.hbm.xml。
![](https://img-blog.csdn.net/20140219183532718)
(5)测试
运行Test类,如果数据库出现user表,则表示测试成功
![](https://img-blog.csdn.net/20140219183647968)
向数据库插入数据测试:在src下建一个名为entity的package,并新建一名为UserDao的类
![](https://img-blog.csdn.net/20140219183744953)
在类Test中进入如下编码
![](https://img-blog.csdn.net/20140219183830828)
运行Test,并查询数据库,如果数据库内容如下,则hibernate引人成功。
![](https://img-blog.csdn.net/20140219183918890)
3、将Struts2引入项目
(1)将Struts2的jar导入项目(这里用的是Struts2.3.14)
![](https://img-blog.csdn.net/20140219184727250)
(2)配置web.xml,在里面添加Struts2过滤器
![](https://img-blog.csdn.net/20140219184814250)
(3)把struts.xml引入项目中
![](https://img-blog.csdn.net/20140219184957296)
(4)编写用户登陆的Action来测试
在src下建一个名为action的package,并新建一名为UserAction的类
![](https://img-blog.csdn.net/20140219185040531)
新建login.js
4000
p页面,<body>中内容如下:
![](https://img-blog.csdn.net/20140219185130140)
配置struts.xml
![](https://img-blog.csdn.net/20140219185218718)
启动tomcat,打开浏览器输入http://localhost:8080/SSH/login.jsp,点击登录后如果能跳到index.jsp页面,并且控制台输出“测试成功(login方法中的输出语句)” 则导入struct成功。
4、将Spring引入项目
(1)将Spring的jar导入项目(这里用的是Spring3.2.0)
![](https://img-blog.csdn.net/20140219185837968)
注:其中commons-logging-1.1.1.jar是从struct2中得到的
(2)引入applicationContext.xml(官方文档可找到)
![](https://img-blog.csdn.net/20140219185919656)
(3)测试spring ioc:依赖注入
在test下创建SpringBean类
![](https://img-blog.csdn.net/20140219190009375)
将SpringBean配置到applicationContext.xml中,并给msg注值“注入”
![](https://img-blog.csdn.net/20140219190056265)
修改Test的代码
![](https://img-blog.csdn.net/20140219190156031)
运行Test,如果控制台有“注入”输出,则表明引人spring成功
5、spring与struts2整合:核心接管struts2里面的action类
(1)引入整合包(在struts2中找)
![](https://img-blog.csdn.net/20140219190955781)
(2).在web.xml中,配置监听器
![](https://img-blog.csdn.net/20140219191034937)
(3)把action交给spring来管理(在spring配置文件配置action类)
比如将struct中的userAction交给spring创建,修改applicationContext.xml
![](https://img-blog.csdn.net/20140219191113515)
注:scope为作用域,其中的值表示每次请求就new一个action
(4)在struts.xml里面,从springioc工厂去加载action类<class="bean名称">
![](https://img-blog.csdn.net/20140219191204718)
(5)测试:启动tomcat,打开浏览器输入http://localhost:8080/SSH/login.jsp,点击登录后如果能跳到index.jsp页面,并且控制台输出“测试成功(login方法中的输 出语句)”则整合成功
6、spring与hibernate3整合:核心接管sessionFactory,配置声明式事务,管理hibernate中的session
(1)配置sessionFactory:在applicationContext.xml添加配置
![](https://img-blog.csdn.net/20140219192149000)
注:数据源dataSource并未配置,<property name= “configLocation”..>表示与hibernate关联
(2)配置数据源c3p0
引人c3p0jar
![](https://img-blog.csdn.net/20140219192244781)
在applicationContext.xml中添加配置
![](https://img-blog.csdn.net/20140219192334859)
(3)删掉hibernate.cfg.xm与applicationContext.xml中重复的部分,删除后如下:
![](https://img-blog.csdn.net/20140219192415046)
(4)测试:
修改UserDao,继承hibernateDaoSupport
![](https://img-blog.csdn.net/20140219192545187)
为UserDao注入sessionFactory
![](https://img-blog.csdn.net/20140219192621937)
修改Test的代码
![](https://img-blog.csdn.net/20140219192649968)
运行Test,如果数据库中插入了“hehe”,则表示测试成功
(5).在applicationContext.xml配置声明式事务(把事务控制的放在业务层)
![](https://img-blog.csdn.net/20140219192732718)
注:expression的值表示切面点是service包下的,任意类任意方法任意参数。这里可以先建一个名为service的package,并新建一UserService类占位
<tx:method>表示:任意方法都拥有事务
(6)配置openSessionInView
在web.xml中配置openSessionInView过滤器
![](https://img-blog.csdn.net/20140219192836437)
注:该过滤器需放在struct过滤器前面
四、测试:以注册为例
(1)修改user的属性(添加属性password)
![](https://img-blog.csdn.net/20140219193637984)
(2)创建register.jsp页面,其body体如下
![](https://img-blog.csdn.net/20140219193738687)
(3)先建一个名为service的package,并新建一UserService类(如果刚才没建的话),并增加save方法
![](https://img-blog.csdn.net/20140219193818812)
(4)在UserAction增加register方法
![](https://img-blog.csdn.net/20140219193914343)
(5)在applicationContext.xml中配置bean
![](https://img-blog.csdn.net/20140219193944843)
(6)修改struct.xml文件
![](https://img-blog.csdn.net/20140219194043125)
运行程序:启动tomcat,打开浏览器输入http://localhost:8080/SSH/register.jsp,输入用户名和密码后点击提交,如果能跳到index.jsp页面,并且在数据库中能找到相 应的 数据,则表明整合成功
SSH三大框架整合(粗粒度)完成
Myeclipse、jdk1.70、Tomcat7.0、mysql
二、整合思路:
1.把Action交给Spring来管理。
2.把SessionFactory交给Spring来管理。
3.把Session打开与关闭交给Spring来管理。
4.把事务打提,提交、回滚交给Spring来管理。
三、整合:
1、创建web project,名为SSH。并新建一个名为res的source
folder,用于存放配置文件。
2、将hibernate引人项目
(1)将Hibernate的jar导入项目(这里用的是hibernate3.5.6)
注:其中log4j-1.2.9jar、slf4j-log4j12-1.5.10.jar、mysql-connector-java-5.17.bin.jar是额外包(前两个用于做日志,后一个用于连接数据库)
(2)将配置文件hibernate.cfg.xml引入项目的res 目录下(可在hibernate3.5.6中找到)
(3)测试
新建数据库ssh,并在src中建一个名为test的package;新创建一个名为Test的类。Test类的代码如下:
运行Test类,控制台中如果输出类似如下的语句,则表明测试成功。
org.hibernate.impl.SessionFactoryImpl@1649b44
(4)引人实体映射文件 hbm.xml -->@Entity(用户表为例)
a、建一个名为entity的package,并新建一实体类user,有id和name属性
b、在entity包下引人映射文件User.hbm.xml(可在hibernate3.5.6中找到)
c、在hibernate.cfg.xml中引人实体映射文件User.hbm.xml。
(5)测试
运行Test类,如果数据库出现user表,则表示测试成功
向数据库插入数据测试:在src下建一个名为entity的package,并新建一名为UserDao的类
在类Test中进入如下编码
运行Test,并查询数据库,如果数据库内容如下,则hibernate引人成功。
3、将Struts2引入项目
(1)将Struts2的jar导入项目(这里用的是Struts2.3.14)
(2)配置web.xml,在里面添加Struts2过滤器
(3)把struts.xml引入项目中
(4)编写用户登陆的Action来测试
在src下建一个名为action的package,并新建一名为UserAction的类
新建login.js
4000
p页面,<body>中内容如下:
配置struts.xml
启动tomcat,打开浏览器输入http://localhost:8080/SSH/login.jsp,点击登录后如果能跳到index.jsp页面,并且控制台输出“测试成功(login方法中的输出语句)” 则导入struct成功。
4、将Spring引入项目
(1)将Spring的jar导入项目(这里用的是Spring3.2.0)
注:其中commons-logging-1.1.1.jar是从struct2中得到的
(2)引入applicationContext.xml(官方文档可找到)
(3)测试spring ioc:依赖注入
在test下创建SpringBean类
将SpringBean配置到applicationContext.xml中,并给msg注值“注入”
修改Test的代码
运行Test,如果控制台有“注入”输出,则表明引人spring成功
5、spring与struts2整合:核心接管struts2里面的action类
(1)引入整合包(在struts2中找)
(2).在web.xml中,配置监听器
(3)把action交给spring来管理(在spring配置文件配置action类)
比如将struct中的userAction交给spring创建,修改applicationContext.xml
注:scope为作用域,其中的值表示每次请求就new一个action
(4)在struts.xml里面,从springioc工厂去加载action类<class="bean名称">
(5)测试:启动tomcat,打开浏览器输入http://localhost:8080/SSH/login.jsp,点击登录后如果能跳到index.jsp页面,并且控制台输出“测试成功(login方法中的输 出语句)”则整合成功
6、spring与hibernate3整合:核心接管sessionFactory,配置声明式事务,管理hibernate中的session
(1)配置sessionFactory:在applicationContext.xml添加配置
注:数据源dataSource并未配置,<property name= “configLocation”..>表示与hibernate关联
(2)配置数据源c3p0
引人c3p0jar
在applicationContext.xml中添加配置
(3)删掉hibernate.cfg.xm与applicationContext.xml中重复的部分,删除后如下:
(4)测试:
修改UserDao,继承hibernateDaoSupport
为UserDao注入sessionFactory
修改Test的代码
运行Test,如果数据库中插入了“hehe”,则表示测试成功
(5).在applicationContext.xml配置声明式事务(把事务控制的放在业务层)
注:expression的值表示切面点是service包下的,任意类任意方法任意参数。这里可以先建一个名为service的package,并新建一UserService类占位
<tx:method>表示:任意方法都拥有事务
(6)配置openSessionInView
在web.xml中配置openSessionInView过滤器
注:该过滤器需放在struct过滤器前面
四、测试:以注册为例
(1)修改user的属性(添加属性password)
(2)创建register.jsp页面,其body体如下
(3)先建一个名为service的package,并新建一UserService类(如果刚才没建的话),并增加save方法
(4)在UserAction增加register方法
(5)在applicationContext.xml中配置bean
(6)修改struct.xml文件
运行程序:启动tomcat,打开浏览器输入http://localhost:8080/SSH/register.jsp,输入用户名和密码后点击提交,如果能跳到index.jsp页面,并且在数据库中能找到相 应的 数据,则表明整合成功
SSH三大框架整合(粗粒度)完成
相关文章推荐
- spring、struct、hibernate三大框架整合
- spring、struct、hibernate三大框架整合--扩展一:添加ajax的支持
- SSH三大框架整合的流程是怎样走的,spring在三大框架中式怎么的一个流程,hibernate是怎么的一个流程,struts2是怎么的一个流程的,
- springMVC系列之(四) spring+springMVC+hibernate 三大框架整合
- spring+springMVC+hibernate 三大框架整合
- 浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓
- Spring+SpringMVC+Hibernate三大框架整合
- 使用MyEclipse整合ssh(Struts、Spring、Hibernate)三大框架(环境搭载+实例源码下载)
- 浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓
- springMVC系列之(四) spring+springMVC+hibernate 三大框架整合
- 浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓
- 浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓
- 【SSH】Struts2(2.5.14)、Spring(5.0.3)、Hibernate(5.2.13)三大框架的整合项目入门示例
- Struts2,Spring,Hibernate三大框架的整合(SSH)
- springMVC系列之(四) spring+springMVC+hibernate 三大框架整合
- 浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓
- spring,hibernate和struts2三大框架整合初印象
- springMVC系列之(四) spring+springMVC+hibernate 三大框架整合
- Spring+SpringMVC+Hibernate三大框架整合的SSH
- hibernate-JPA,struts2,spring三大框架整合的步骤