<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 开启Spring注解配置,但是还是需要将JavaBean手动交给Spring IOC容器进行管理 -->
<!-- <context:annotation-config/> --> <!-- 会扫描以下@Component,@Repository,@Service,@Controller注解修饰的类,将其交给Spring容器进行管理 ,
还包含context:annotation-config配置的所有功能
@Component:无法区分该类为那一层操作时用该注解修饰
@Repository:用于修饰数据库访问层代码(DAO)
@Service:用于修饰业务逻辑层代码
@Controller:用于修饰业务流程控制的代码 以上四个注解会给JavaBean默认一个名字,规则是将类名的首字母小写
但是这四个注解其实在根本没有啥区别
-->
<context:component-scan base-package="com.zhidi"/> <!-- 将JavaBean交给Spring容器进行管理 -->
<!-- autowire-candidate="false" 会将该bean排除到自动注入列表之外 -->
<bean class="com.zhidi.dao.UserDao" autowire-candidate="false" />
<!-- priamry=true,会将该bean做为优先注入的对象 -->
<bean class="com.zhidi.dao.UserDao" primary="true"/>
<bean class="com.zhidi.dao.UserDao" />
<bean id="userDao" class="com.zhidi.dao.UserDao" /> <!-- autowire="byType" 按照类型进行自动装配 -->
<!-- autowire="byName" 按照名称进行装配 -->
<bean class="com.zhidi.service.UserService" autowire="byName">
<!-- 手动构建依赖 -->
<!-- <property name="userDao" ref="userDao"/> -->
</bean> <bean class="com.zhidi.dao.EmpDao" primary="true"/>
<bean id="empDao" class="com.zhidi.dao.EmpDao"/> <bean class="com.zhidi.service.EmpService"/> <bean class="com.zhidi.dao.DeptDao"/> <bean class="com.zhidi.service.DeptService"/> <bean class="com.zhidi.TestLifeDemo"></bean> <!-- 将创建SessionFactory的类交给Spring IOC容器进行管理 -->
<bean class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<!-- 对Hibernate的基础属性进行配置 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.connection.driver_class">com.mysql.jdbc.Driver</prop>
<prop key="hibernate.connection.url">jdbc:mysql://localhost:3306/db_hibernate</prop>
<prop key="hibernate.connection.username">root</prop>
<prop key="hibernate.connection.password">root</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
<prop key="hibernate.current_session_context_class">thread</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
</props>
</property>
<!-- 配置扫描实体类所在包,将其配置到SessionFactory中 -->
<property name="packagesToScan" value="com.zhidi.entity"/>
</bean> </beans>

applicationContext.xml配置文件的内容

步骤总结:

1.构建依赖jar

Spring必须jar(6个)

Hibernate必须jar

整合最少还需要导入3个jar,spring-jdbc.x.x ,spring-tx.x.x,spring-orm.x.x

2.目的是要创建SessionFactory

将LocalSessionFactoryBean交给Spring IOC容器进行管理

<bean class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"></bean>

3.对Hibernate进行基本属性的配置

.hibernate.connection.driver_class

.hibernate.connection.url  .hibernate.connection.username

.hibernate.connection.password

.hibernate.dialect

.hibernate.current_session_context_class  .hibernate.show_sql

.hibernate.format_sql

4.扫描实体类所在包

packagesToScan

5.对实体类进行注解配置

6.将SessionFactory注入到Dao层

7.通过SessionFactory创建Session对象,进行数据库操作

Java框架:spring框架整合hibernate框架的xml配置(使用注解的方式)的更多相关文章

  1. 【SSH框架】系列之 Spring 整合 Hibernate 框架

    1.SSH 三大框架整合原理 Spring 与 Struts2 的整合就是将 Action 对象交给 Spring 容器来负责创建. Spring 与 Hibernate 的整合就是将 Session ...

  2. Spring_day04--Spring框架整合hibernate框架

    Spring框架整合hibernate框架 1 把hibernate核心配置文件中配置数据库信息,把数据库信息在spring进行配置 2 把hibernate里面的sessionFactory创建交给 ...

  3. Spring Boot 整合Hibernate Validator

    Spring Boot 整合Hibernate Validator 依赖 <dependencies> <dependency> <groupId>org.spri ...

  4. 【Hibernate学习笔记-3】在Spring下整合Hibernate时, 关于sessionFactory的类型的说明

    摘要 在Spring下整合Hibernate时,关于sessionFactory的配置方式主要有两种,分别为注解配置方式,和xml配置方式,下面将对这两种配置方式进行介绍. 1. sessionFac ...

  5. Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用

    Unit03: Spring Web MVC简介 . 基于XML配置的MVC应用 . 基于注解配置的MVC应用 springmvc (1)springmvc是什么? 是一个mvc框架,用来简化基于mv ...

  6. JAVA框架 Spring junit整合单元测试

    一.准备工作 1:Junit的需要的jar包: 2.spring的整合的jar包:spring-test-4.2.4.RELEASE.jar 3.代码实现 1) //导入整合的类,帮我们加载对应的配置 ...

  7. [Java] 使用 Spring 2 Portlet MVC 框架构建 Portlet 应用

    转自:http://www.ibm.com/developerworks/cn/java/j-lo-spring2-portal/ Spring 除了支持传统的基于 Servlet 的 Web 开发之 ...

  8. Java框架Spring Boot & 服务治理框架Dubbo & 应用容器引擎Docker 实现微服务发布

    微服务系统架构实践 开发语言Java 8 框架使用Spring boot 服务治理框架Dubbo 容器部署Docker 持续集成Gitlab CI 持续部署Piplin 注册中心Zookeeper 服 ...

  9. spring boot整合mybatis框架及增删改查(jsp视图)

    工具:idea.SQLyog 版本:springboot1.5.9版本.mysql5.1.62 第一步:新建项目 第二步:整合依赖(pom.xml) <dependencies> < ...

随机推荐

  1. Ubuntu 解决:当执行`sudo apt-get update`命令时 出现的 “apt-get 404 Not Found Package Repository Errors” 问题

    Ubuntu 解决:当执行sudo apt-get update或者sudo apt-get install命令是出现的 "apt-get 404 Not Found Package Rep ...

  2. jquery 简单入门

    例:GridView

  3. ADO.Net事务处理

    SQL Server中的事务可以将多个数据库增删改查操作合并为单个工作单元,在操作过程中任何部分出错都可以滚回已经执行的所有更改.ADO.Net中也提供了事务处理功能,通过ADO.net事务,可以将多 ...

  4. I18N的前后端实现

    所需工具: 1.Vue                https://cn.vuejs.org/ 2.Vue-I18N      https://www.npmjs.com/package/vue-i ...

  5. 为什么要使用func.call(this)

    1.为什么要使用func.call(this) 在正常模式下,js 函数里那些你没有声明就使用的变量,其实是访问的全局对象的属性.但是在严格模式下,不允许这种语法,所有变量都必须要显示声明,所以如果你 ...

  6. -bash: ./bak_1.py: /usr/bin/python^M: bad interpreter: 没有那个文件或目录

    在Windows的PyCharm中编写了一个Python文件,然后上传至CentOS中,已经添加执行权限,但是仍然会报如下的错误: 代码如下: #!/usr/bin/python # -*- codi ...

  7. 关于SqlDataReader使用的一点疑惑

    C#中的SqlDataReader类(System.Data.SqlClient)是用来在保持打开数据库连接的状态下取数据用的 用法如下图: “保持与数据库的连接”这个特性也是SqlDataReade ...

  8. openstack RPC通信

    openstack RPC通信 OpenStack 的主要组件有 Nova.Cinder.Neutron.Glance 等,分别负责云平台的计算.存储.网络资源管理.openstack 各组件之间是通 ...

  9. Java基础笔记(十三)——面向对象

    类和对象 类是具有相同属性和方法的一组对象的集合,好比一个虚拟的轮廓(抽象的概念),确定对象将会拥有的特征(属性)和行为(方法). 对象是类的实例表现,是一个具体的东西(一个看得到.摸得着的具体实体) ...

  10. EcmaScript源码

    /** @type {Number} @const */ NaN = 0; /** @type {Number} */ Infinity = 0; undefined = 0; /** @param ...