首页 > 编程语言 > 详细

SSH学习-Struts2+Spring+Hibernate整合配置使用

时间:2019-10-15 18:03:50      阅读:80      评论:0      收藏:0      [点我收藏+]

 

引言

前面简单的的学习了如何使用Struts2和Hibernate,学习了基本的配置方法和使用方法,最后需将新学习的表现层框架Struts2和持久层框架Hibernate,和Spring整合起来,以一个简单的验证登录案例,来理解其基本使用方法。

Spring和Hibernate的整合

Spring和Hibernate整合就是为了让Spring管理Hibernate的session和sessionFactory。类似Mybatis,在里面配置管理sessionFactory和MappingConfigurer。

(1)导包

Hibernate使用相关包: hibernate-core包,MySql-connector包,javassist包 

连接池:dbcp,或者使用阿里的c3p0,这里使用c3p0

Spring使用相关包:spring-orm(对象关系映射包)

测试相关包:junit包

技术分享图片 View Code

(2)配置文件

与MyBatis类似,MyBatis在与Spring整合之前,需要一个专门的MyBatis配置文件,其中有配置数据库连接以及Mapper映射文件的位置,如果与Spring整合后,MyBatis的相关连接配置和Mapper配置都放到了Spring配置文件中。与MyBatis类似,Hibernate与Spring整合后,也是在Spring的配置文件中进行数据库连接配置,以及配置Mapper文件xxx.hbm.xml文件,因此配置文件需要一个spring-*.xml,以及若干类名.hbm.xml文件。

spring-*.xml

(2-1)需配置数据库连接池,这次用的c3p0配置dataSource bean,与MyBatis类似,也需要配置sessionFactory,在sessionFactory里面有hibernatePropeties属性和mappingLocation属性,这两个属性可以完成以前hibernate.cfg.xml的部分配置,如dialect,show_sql,format_sql等配置在hibernatePropeties,而映射文件配置在mappingLocation属性下面。

(2-2)配置hibernateTemplate,如果不整合spring,需要手动得到session对象,然后再调用session对象的query方法获得query对象,最后使用list方法得到查询对象,整合后直接使用hibernateTemplate的API可以直接得到查询对象,因此需要配置。

(2-3)配置事物传播属性,与MyBatis类似,只是具体的实现类不一样,需要引入的属性也不一样,这里需要引入sessionFactory,初始化transactionManager。

技术分享图片 View Code

user.hbm.xml

user.hbm.xml跟以前一样,配置class,里面添加user实体类和t_user表的映射关系。

技术分享图片 View Code

(3)实现类

技术分享图片 View Code

(4)建表 cn_user

技术分享图片

(5)测试Service层+DAO层

DAO层需要建立接口,以及接口的实现类,MyBatis是不需要创建实现了的,Hibernate需要。

DAO层:

技术分享图片 View Code
技术分享图片 View Code

Service层:

技术分享图片 View Code
技术分享图片 View Code

测试类:

技术分享图片 View Code

测试结果:

技术分享图片

测试没有问题就可以接下来整合Struts2+Spring了。

Struts2和Spring的整合

配置跟以前学习的一样,需要导入关键包,以及配置struts.xml和web.xml

(1)导包 struts2-core,struts2-spring-plugin,spring-webmvc,如果测试返回为json,可以导包struts2-json-plugin,以及整合到前面的导包文件了,可以参考前面内容。

(2)配置spring-*.xml(组件扫描),配置struts.xml,还有web.xml(配置listener,context-param,filter)

这里主要再复习下,配置listener的作用是使用它来启动spring容器,而启动容易需要读取配置文件,不配置的话就是默认读取WEB-INF下的applicationContext.xml,如果配置了context-param就会从配置地址读取,filter的配置相当如以前的servlet的配置。

web.xml

技术分享图片 View Code

struts.xml

技术分享图片 View Code

(3)filter实现类

技术分享图片 View Code

(4)jsp页面,登录页面和返回登录信息页面

技术分享图片 View Code
技术分享图片 View Code

(5)登录测试

技术分享图片

技术分享图片

这样就完成了一个简单的Struts2+Spring+Hibernate搭建,并实现简单登录逻辑。

结论

整合Struts2+Spring+Hibernate,需要熟悉没有和Spring整合之前如何配置,有了Spring部分内容在Spring-*.xml文件中进行了集成,另外Spring帮忙自动管理Struts2和Hibernate组件。

SSH学习-Struts2+Spring+Hibernate整合配置使用

原文:https://www.cnblogs.com/shineehcj/p/SSH.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!