ssh框架整合详解一

Posted muyunone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh框架整合详解一相关的知识,希望对你有一定的参考价值。

 步骤一:三大框架整合原理图

技术分享图片

 

步骤二:导入hibernate相关的jar包

1、我使用的版本hibernate版本是:hibernate-release-5.0.7.Final.zip,解压后再lib目录可以看到下图目录

技术分享图片

2、导入lib/required下的jar包:该目录下的jar包是进行hibernate开发所需要的基本jar包

技术分享图片

3、导入lib/jpa目录下的jar包。

     jpa:java persist api java的持久化规范,JPA是需要Provider来实现其功能的,Hibernate就是JPA Provider中很强的一个。从功能上来说,JPA现在就是Hibernate功能的一个子集。可以简单的理解为JPA是标准接口,Hibernate是实现

技术分享图片

4、导入数据库连接驱动包:连接mysql数据库

技术分享图片

5、到这一步骤,hibernate部分的jar包导入结束,一共导入11个jar包

步骤三:导入struct2相关的jar包

1、我使用的版本struct2版本是struts-2.3.24-all,解压后如下图

技术分享图片

2、在struts-2.3.24apps目录下,有一个基本struts2-blank的war包,

     解压后找到WEB-INFlib目录下的jar包导入到项目中

技术分享图片

            解压后的struts2-blank

 技术分享图片

            WEB-INFlib目录下的jar包

     以上的jar包是进行struct2开发的基本jar包

注意:javassist-3.18.1-GA.jar包与hibernate中的重复,删除版本低的jar包

技术分享图片

3、在struts-2.3.24-allstruts-2.3.24lib目录中找到struts整合spring插件包:struts2-spring-plugin-2.3.24.jar,导入项目,如图

技术分享图片

 

 4、到这一步骤,struct2框架的jar包导入结束,一共14个jar包

步骤四:导入spring各个模块的jar包

1、我使用的spring版本是spring-framework-4.2.4.RELEASE-dist.zip,解压后找到lib目录,

     导入spring框架基本jar包,如图

技术分享图片

注意:logging-1.1.1.jar和log4j-1.2.15.jar这个二个是日志包,在lib目录下没有,需要自己单独下载

2、整合web:在lib目录下,找到spring-web-4.2.4.RELEASE.jar,导入整合web

     jar包作用:整合struct技术分享图片

3、整合aop:在lib目录下,找到aop相关的jar包,导入整合aop

技术分享图片

注意:图片中前二个jar包没有在lib目录下面,需要单独下载

4、整合Hibernate和事务:在lib目录下,找到下图中的jar包,导入整合hibernate和事务

技术分享图片

 5、整合junit4测试:在lib目录下,找到spring-test-4.2.4.RELEASE.jar,如图

技术分享图片

 6、到这一步骤,spring框架需要的jar包导入完成,一个导入16个jar包

 整个项目一共导入40个jar包

步骤五:单独配置spring容器

1、在经过了上面的操作之后,我们只是导入了各个框架的jar包,并没有在项目中引入框架,更是没有进行整合。

接下来我们要进行的操作是引入各个框架到项目,然互在整合

2、创建applicationContext.xml配置文件,并导入约束(4个),如下图

四个约束分别是bean,context,aop,tx

技术分享图片

3、在web.xml上配置监听器,让spring随着项目的启动而启动,如下图

技术分享图片

4、创建user类,并配置在applicationContext.xml上:<bean name="user" class="ssh.domain.User"></bean>

如图

技术分享图片

5、编写一个测试文件,启动服务器,服务器启动过程中没有报错,

     测试spring容器是否可以帮你创建对象

 技术分享图片

6、启动没有报错,控制台打印如图,说明spring单独引入成功。

技术分享图片

步骤六:单独配置struts2

1、配置struts2主配置文件:struct.xml,如图

技术分享图片

2、创建ssh.web.action包,编写UserAction类,如图

技术分享图片

3、在web.xml上配置struct核心过滤器

技术分享图片

4、启动服务器,访问http://localhost/ssh/UserAction_testStruct.action,可以看到控制台打印true,浏览器显示index.jsp内容

技术分享图片

技术分享图片

说明struct单独引入成功

 

步骤七:struct和spring的整合

1、整合前的准备:创建一个service和service实现类,如图

技术分享图片

技术分享图片

2、在ssh.web.action包下的UserAction编写如下的代码

技术分享图片

3、开始整合:在struct常量配置文件中,可以看到二个常量,如图

 struts.objectFactory = spring 将action的创建交给spring容器

struts.objectFactory.spring.autoWire = name spring负责装配Action依赖属性

技术分享图片

由于要将struct的action交给spring管理,因此我们需要配置一下常量,告诉struct,action交给spring管理,如图

 

技术分享图片

接下来配置spring配置文件,如图

技术分享图片

4、整合测试:重启启动tomcat,浏览器输入地址: http://localhost/ssh/UserAction_testStructAndSpring.action,观察控制台如图

技术分享图片

 

 说明整合成功,struct的action交给spring管理了

 步骤八:单独配置hibernate框架

1、创建User类的映射文件,如图

技术分享图片

2、编写hibernate配置文件:hibernate.cfg.xml,如图

技术分享图片

3、测试hibernate环境是否成功,如图

技术分享图片

4、控制台打印sql语句,数据库生成数据,如图,说明hibernate环境搭建成功

技术分享图片

 技术分享图片

步骤九:spring框架和hibernate整合

1、整合原理:将sessionFactory对象交给spring容器管理

2、配置spring配置文件,如图

技术分享图片

3、由于hibernate配置文件中的信息已经在spring配置文件中都配好了,因此可以删除掉hibernate的配置文件

4、测试整合:

技术分享图片

5、控制台输出sql语句,数据库生成数据,说明hibernate的sessionFactory交给了spring管理,整合成功

技术分享图片

 

以上是关于ssh框架整合详解一的主要内容,如果未能解决你的问题,请参考以下文章

spring 技术详解 教程

SSH(Spring+struts2+hibernate)整合版详解

SSH框架整合过程总结

Spring SSH框架整合

SSH登录与增删改查demo详解+源代码

SSH三大框架的整合