码迷,mamicode.com
首页 > 编程语言 > 详细

Spring整合Hibernate的两种方式

时间:2019-12-11 19:34:31      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:bean   date   ber   upd   pre   替换   style   data   path   

在使用spring注解整合hibernate时出现"org.hibernate.MappingException: Unknown entity: com.ssh.entry.Product“异常的问题。

最后找到了问题,总结一下

1.spring整合hibernate,取代*.hbm.xml配置文件
  在applicationContext.xml文件中配置方式

<!-- 创建sessionFactory -->
         <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
                 <property name="dataSource" ref="dataSource"></property>
                <!-- 使用统配符 配置hibernate hbm配置文件   -->
                <property name="mappingLocations">
                    <value>classpath*:com/jxc/entity/*.hbm.xml</value>
                </property>
                  
                <!--hibernate属性配置 -->
                <property name="hibernateProperties">
                    <props>
                        <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
                        <prop key="hibernate.hbm2ddl.auto">update</prop>
                        <prop key="hibernate.show_sql">true</prop>
                        <prop key="hibernate.format_sql">true</prop>
                    </props>
                </property>
        </bean>

上面是以前的代码拿来对比下

spring整合hibernate,使用注解的方式
    在applicationContext.xml文件中配置方式

<!-- 配置Hibernate的SessionFactory -->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <!-- 注入连接池 -->
        <property name="dataSource" ref="dataSource"/>
        <!-- 扫描并加载注解过的实体类 -->
        <property name="packagesToScan" value="com.kaspar.product.model"/>
        <!-- 配置Hibernate属性 -->
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.show_sql">true</prop><!-- 是否展示SQL -->
                <prop key="hibernate.format_sql">true</prop><!-- 输出底层sql语句格式 -->
                <prop key="hibernate.hbm2ddl.auto">update</prop><!-- 是否自动创建表结构 -->
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
            </props>
        </property>
        
    </bean>

上面其中一段或者替换为:

<!-- 配置数据库常用参数 -->
<property name="packagesToScan">
            <list>
                <value>com.kaspar.product.model</value> 
           </list> 
</property>

这是第二种使用注解的方式。两种方式只有在引入映射文件或者注解类时候有差别 。

第一次整合注解时候,出现: "org.hibernate.MappingException: Unknown entity: com.ssh.entry.Product"

这里引入路径,只需要进入到包名就可以。

Spring整合Hibernate的两种方式

标签:bean   date   ber   upd   pre   替换   style   data   path   

原文地址:https://www.cnblogs.com/kaspar/p/12016618.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!