Spring对hibernate配置文件hibernate.cfg.xml的集成,来取代hibernate.cfg.xml的配置。

 spring对hibernate配置文件hibernate.cfg.xml的集成相当好,可以在Spring中配置Hibernate的SessionFactory从而取代Hibernate.cfg.xml和HibernateSessionFactory.java

   Spring在集成Hibernate时又分为两种形式:
1、继续使用Hibernate的映射文件*.hbm.xml
2、使用jpa注解形式的pojo对象,而去掉*.hbm.xml的Hibernate映射文件

 首先要引入jar包

  

  需要的这里有http://pan.baidu.com/s/1mhILAkg

一.继续使用Hibernate的映射文件*.hbm.xml

     

   <!-- 定义dbcp数据源 -->
   <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
      <!-- 指定jdbc驱动 -->
      <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
      <!-- 连接数据库的url地址 -->
      <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
      <!-- 连接数据的用户名和密码 -->
      <property name="username" value="hyj"></property>
      <property name="password" value="123"></property>
   </bean>

   <!-- 定义sessionFactory -->
   <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
      <!-- 为LocalSessionFactoryBean注入定义好的数据源 -->
      <property name="dataSource">
         <ref bean="dataSource"/>
      </property>
      <!--添加hibernate配置参数 -->
      <property name="hibernateProperties">
         <props>
             <!-- 每个数据库都有其对应的Dialect以匹配其平台特性 -->
             <prop key="hibernate.dialect">
             org.hibernate.dialect.Oracle10gDialect
             </prop>
             <!-- 是否将运行期生成的sql输出到日志以供调试 -->
             <prop key="hibernate.show_sql">
             true
             </prop>
             <!-- 是否格式化sql -->
             <prop key="hibernate.format_sql">
             true
             </prop>
              <prop key="hibernate.hbm2ddl.auto">
              update
             </prop>
         </props>
      </property>

      <!-- 添加对象关系映射 -->
      <property name="mappingResources">
         <list>
           <value>classpath:cn/entity/User.hbm.xml</value>
         </list>
      </property>
   </bean>
   

    二.使用jpa注解形式的pojo对象,而去掉*.hbm.xml的Hibernate映射文件

    这里需要注意的就是

1.spring中配置SessionFactory bean时它对应的class应为

org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean

2.

AnnotationSessionFactoryBean中查找jpa注解形式的pojo映射对象的属性有:annotatedClasses、packagesToScan

① annotatedClasses:指定classpath下指定的注解映射实体类的类名

② packagesToScan指定映射文件的包名

<!-- 定义dbcp数据源 -->
   <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
      <!-- 指定jdbc驱动 -->
      <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
      <!-- 连接数据库的url地址 -->
      <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
      <!-- 连接数据的用户名和密码 -->
      <property name="username" value="hyj"></property>
      <property name="password" value="123"></property>
   </bean>

   <!-- 定义sessionFactory -->
   <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
      <!-- 为LocalSessionFactoryBean注入定义好的数据源 -->
      <property name="dataSource">
         <ref bean="dataSource"/>
      </property>
      <!--添加hibernate配置参数 -->
      <property name="hibernateProperties">
         <props>
             <!-- 每个数据库都有其对应的Dialect以匹配其平台特性 -->
             <prop key="hibernate.dialect">
             org.hibernate.dialect.Oracle10gDialect
             </prop>
             <!-- 是否将运行期生成的sql输出到日志以供调试 -->
             <prop key="hibernate.show_sql">
             true
             </prop>
             <!-- 是否格式化sql -->
             <prop key="hibernate.format_sql">
             true
             </prop>
              <prop key="hibernate.hbm2ddl.auto">
              update
             </prop>
         </props>
      </property>

      <!-- 添加对象关系映射 -->
      <property name="packagesToScan">
         <list>
           <value>cn.entity.*</value>
         </list>
      </property>
   </bean>

Spring配置文件集成Hibernate配置文件的更多相关文章

  1. spring 配置参数从配置文件中加载到PropertiesFactoryBean 和配置参数从数据库加载到PropertiesFactoryBean 的实现,及项目中的相关应用

    1.加载.properties文件中的配置参数加载到PropertiesFactoryBean容器中 <bean id="configProperties" class=&q ...

  2. 【spring配置】 一组配置文件引出的问题

    applicationContext.xml: <?xml version="1.0" encoding="UTF-8"?> <beans x ...

  3. spring整合hibernate配置文件

    Spring对hibernate配置文件hibernate.cfg.xml的集成,来取代hibernate.cfg.xml的配置 spring对hibernate配置文件hibernate.cfg.x ...

  4. Spring的DataSource配置、将Hibernate配置所有写到Spring配置

    DataSource能够集中管理数据库连接,降低维护工作量,使部署更简单: Spring的DataSource配置:(Spring数据源配置)这里使用dbcp,还有非常多其它的如c3p0,jdbc,j ...

  5. struts2+hibernate+spring配置版框架搭建以及简单测试(方便脑补)

    为了之后学习的日子里加深对框架的理解和使用,这里将搭建步奏简单写一下,目的主要是方便以后自己回来脑补: 1:File--->New--->Other--->Maven--->M ...

  6. Spring的DataSource配置、将Hibernate配置全部写到Spring配置

    DataSource可以集中管理数据库连接,减少维护工作量,使部署更简单: Spring的DataSource配置:(Spring数据源配置)这里使用dbcp,还有很多其他的如c3p0,jdbc,jn ...

  7. Spring Boot + Jpa(Hibernate) 架构基本配置

    本文转载自:https://blog.csdn.net/javahighness/article/details/53055149 1.基于springboot-1.4.0.RELEASE版本测试 2 ...

  8. Spring监管下的Hibernate配置文件

    今天看了看别人的程序,用的是SSH搭建的,自己回忆了下感觉假设採用注解的话那么Hibernate的配置文件hibernate.cfg.xml是还须要的,而*.hbm.xml则能够被注解所替代的,结果确 ...

  9. spring配置hibernate映射文件-------通配符

    <!-- 这里一定要注意是使用spring的mappingLocations属性进行通配的 -->      <property name="mappingLocation ...

随机推荐

  1. Linux 系统常用命令汇总(三) 用户和用户组管理

    用户和用户组管理 命令 选项 注解 示例 useradd [选项] 用户名 新建用户 创建一个名为tester的用户,并指定他的UID为555,指定加入test群,指定其使用C-shell:  use ...

  2. 嵌入式Linux驱动学习之路(二十四)Nor Flash驱动程序

    Nor Flash和Nand Flash的不同: 类型 NOR Flash  Nand Flash  接口 RAM-like,引脚多 引脚少 容量 小(1M.2M...) 大(512M.1G) 读 简 ...

  3. app开发项目简单的结构一

    一 .Network (网络) 1. 接口类(可以一个放所有接口的头文件)ApiConfig.h. (1). 可以放服务器的地址.图片服务器的地址及其它接口的地址(这样做的好处是只用导入一个头文件即可 ...

  4. jmeter(九)逻辑控制器

    jmeter中逻辑控制器(Logic Controllers)的作用域只对其子节点的sampler有效,作用是控制采样器的执行顺序. jmeter提供了17种逻辑控制器,它们各个功能都不尽相同,大概可 ...

  5. [python]设计模式

    需要说明:java跟python在思维模式上并不一样,java利用接口以及多态可以实现很多抽象上的东西,而python不行,其实以下很多设计模式写法并不适用也没有必要,更多是为了对比和帮助理解这些设计 ...

  6. Linux 进程与线程六

    //线程间的通信 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <e ...

  7. Linux 共享内存详解一

    共享内存段被多个进程附加的时候,如果不是所有进程都已经调用shmdt,那么删除该共享内存段时,会出现一个临时的不完整的共享内存段(key值是0),无法彻底删除.只有当所有进程都调用shmdt,这个临时 ...

  8. css3圣诞雪景球

    本来想多做几个了 无奈最近太忙 于是模仿做了一个在codepen看到的圣诞雪景球   算是送给自己的圣诞礼物 演示地址:http://www.qdfuns.com/notes/26668/d5e177 ...

  9. HAproxy的安装与配置讲解

    1,安装 官网下载 http://www.haproxy.org/#down cd /usr/local/src/ wget http://www.haproxy.org/download/1.4/s ...

  10. C#窗体程序【用户控件-窗体】委托事件

    这里的自定义控件是由普通控件组合而成的.希望事件响应代码推迟到使用自定义控件的窗体里写.步骤一:新建一个用户控件,放两个按钮,Tag分别是btn1,btn2.这两个按钮的共用单击事件处理代码如下: u ...