MVC案例整合Spring和Hibernate

说到整合Spring和Hibernate首先要搞清楚,整合什么?

1、使用Spring的IOC容器来生产Hibernate的SessionFactory对象实例

2、让Hibernate使用Spring的声明式事务

整合步骤

1、先加入Hibernate

2、在加入Spring,整合

新建项目,建立包结构,演示整合

1、导入hibernate的jar包

XML 复制代码
<dependency>
	<groupId>org.hibernate</groupId>
	<artifactId>hibernate-core</artifactId>
	<version>5.2.17.Final</version>
</dependency>

2、新建配置文件

3、生产model类和数据库的表之间的关系映射xml文件

加入Spring

1、导入jar包

XML 复制代码
<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>5.0.6.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>5.0.6.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>5.0.6.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-orm</artifactId>
			<version>5.0.6.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aspects</artifactId>
			<version>5.0.6.RELEASE</version>
		</dependency>
<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>5.0.6.RELEASE</version>
 </dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>5.0.6.RELEASE</version>
        </dependency>

2、配置Spring,同时也就整合了

补充一点:Hibernate的配置文件可以去掉,它里边的原生的hibernate属性怎么配置呢?

整合就完了吗?不是,我们还要考虑一些问题

web应用中使用Spring框架的时候,Spring的IOC容器的创建时机:应该是在Web应用被载入服务器的时候,就要创建Ioc容器,并且要将Ioc容器放到Web的ServletContext域中!以供Web应用里的类调用!具体应该怎么做呢?看代码!

web.xml

SpringContextListener.java

在真正的web项目中,是不用我们自己去写SpringContextListener这个监听器的,spring已经给我们写好了一个,我们直接在web.xml配置文件中配置就好了!

通过以下utils工具,可以直接获取到Spring的ioc容器,具体内部细节我们可以不关心:

相关推荐
mqiqe6 小时前
Spring MVC 页面跳转方案与区别
python·spring·mvc
Pasregret7 小时前
04-深入解析 Spring 事务管理原理及源码
java·数据库·后端·spring·oracle
Micro麦可乐7 小时前
最新Spring Security实战教程(七)方法级安全控制@PreAuthorize注解的灵活运用
java·spring boot·后端·spring·intellij-idea·spring security
翻滚吧键盘7 小时前
spring打包,打包错误
java·后端·spring
_Djhhh7 小时前
基于SpringAOP面向切面编程的一些实践(日志记录、权限控制、统一异常处理)
java·spring boot·spring·maven·sprint
星星不打輰9 小时前
Spring基于注解进行开发
java·spring
陈大爷(有低保)9 小时前
Spring中都用到了哪些设计模式
java·后端·spring
程序员 小柴9 小时前
SpringCloud概述
后端·spring·spring cloud
陈三一10 小时前
关于多数据源下Spring声明式事务管理失效问题的分析与解决
数据库·spring
2401_8848107412 小时前
Spring-MVC笔记上(上)
笔记·spring·mvc