Spring4整合Hibernate5时不能自动生成表结构
Posted 禁忌夜色153
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring4整合Hibernate5时不能自动生成表结构相关的知识,希望对你有一定的参考价值。
? 版权声明:本文为博主原创文章,转载请注明出处
1.问题描述:
Spring4整合Hibernate5时,不再使用hibernate.cfg.xml,将其内容整合到Spring配置文件中,启动后不能自动创建表结构
2.解决方案:
设置hibernateProperties时,需要设置hibernate前缀
原本设置,不能自动创建表结构
<!-- 配置Hibernate相关属性 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> <!-- 注入连接池 --> <property name="dataSource" ref="dataSource"/> <!-- 配置Hibernate属性 --> <property name="hibernateProperties"> <props> <prop key="dialect">org.hibernate.dialect.mysql5InnoDBDialect</prop><!-- 方言 --> <prop key="hbm2ddl.auto">update</prop><!-- 是否自动创建数据库表结构 --> <prop key="show_sql">true</prop><!-- 是否展示SQL --> </props> </property> <!-- 扫描并加载注解的实体类 --> <property name="packagesToScan" value="org.*.model"/> </bean>
修改后设置,可以自动创建表结构
<!-- 配置Hibernate相关属性 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> <!-- 注入连接池 --> <property name="dataSource" ref="dataSource"/> <!-- 配置Hibernate属性 --> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop><!-- 方言 --> <prop key="hibernate.hbm2ddl.auto">update</prop><!-- 是否自动创建数据库表结构 --> <prop key="hibernate.show_sql">true</prop><!-- 是否展示SQL --> </props> </property> <!-- 扫描并加载注解的实体类 --> <property name="packagesToScan" value="org.*.model"/> </bean>
以上是关于Spring4整合Hibernate5时不能自动生成表结构的主要内容,如果未能解决你的问题,请参考以下文章
spring4整合hibernate5以及出现的问题解决办法
Spring 4 + Hibernate 5 = org.springframework.orm.jpa.EntityManagerHolder 不能转换为 org.springframework.o