MVC案例整合Spring和Hibernate

devtools/2024/10/15 4:03:28/

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

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

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

整合步骤

1、先加入Hibernate

2、在加入Spring,整合

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

1、导入hibernate的jar包

<dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>5.2.17.Final</version>
</dependency>

2、新建配置文件

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

加入Spring

1、导入jar包

<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容器,具体内部细节我们可以不关心:

 


http://www.ppmy.cn/devtools/125970.html

相关文章

架构设计笔记-17-通信系统架构设计理论及实践

目录 知识要点 案例分析 1.数据中心架构的技术 论文 1.论网络安全体系设计 知识要点 开放系统的存储方式主要有&#xff1a; 1. 直连式存储&#xff08;Direct-Attached Storage&#xff0c;DAS&#xff09;&#xff1a;在服务器上外挂一组大容量硬盘&#xff0c;存储设…

python基础-如何分文件编写

在Python中&#xff0c;为了使代码更具可读性和模块化&#xff0c;通常会将代码拆分到多个文件中。这种方式有助于将不同功能模块分离&#xff0c;使代码更容易维护和重用。以下是如何通过分文件编写Python代码的一些方法和示例&#xff1a; 1. 使用模块&#xff08;.py 文件&…

004 【第二章第三节】数据类型

目录 数据类型的介绍 C 语言中的数据类型分类 GCC 中其本数据类型的取值范围 数据类型的介绍 在高级程序设计语言中引入数据类型&#xff08;Data Type&#xff09;的主要目的是便于在程序中对它们按不同方式和要求进行处理。 由于不同类型的数据在内存中占用不同大小的存储…

Android 安装过程五 MSG_INSTALL消息的处理 安装

现在马上进入正式的安装流程。   从前面文章 Android 安装过程四 MSG_INSTALL消息的处理 安装之前的验证知道&#xff0c;在验证之后没有什么问题的情况下&#xff0c;会回调onVerificationComplete()方法&#xff0c;它位于PackageInstallerSession类中。 private void onVe…

基于yolov8、yolov5的鸟类检测系统(含UI界面、数据集、训练好的模型、Python代码)

项目介绍 项目中所用到的算法模型和数据集等信息如下&#xff1a; 算法模型&#xff1a;     yolov8、yolov8 SE注意力机制 或 yolov5、yolov5 SE注意力机制 &#xff0c; 直接提供最少两个训练好的模型。模型十分重要&#xff0c;因为有些同学的电脑没有 GPU&#xff0…

一个月学会Java 第16天 注解和异常处理

Day16 注解和异常处理 为什么一定要标注是元注解呢&#xff0c;这个原因其实非常的简单&#xff0c;因为注解现在还不能写&#xff0c;想要使用注解达到SpringMVC和SpringBoot的等级需要使用反射&#xff0c;但是反射我们现在还不会&#xff0c;所以就先讲讲最基本的元注解。 第…

第二章 初识RabbitMQ

目录 一、介绍 二、RabbitMQ的主要特性及应用场景 2.1. 主要特性 2.2. 应用场景 2.3. RabbitMQ的整体架构及核心概念 2.4. MQ的比较与选择 RabbitMQ官网地址&#xff1a;https://www.rabbitmq.com/docs 一、介绍 RabbitMQ是实现了高级消息队列协议&#xff08;AMQP&#…

React中useEffect钩子

副作用&#xff1a;渲染以外的操作&#xff1a;像后端获取数据、操作DOM参数&#xff1a;副作用方法、依赖&#xff08;改变时重新执行&#xff09;调用时间&#xff1a;渲染JSX之后/依赖改变 useEffect 是 React 中的一个 Hook&#xff0c;用于在函数组件中执行副作用操作。副…