如何在没有持久性xml的情况下配置hibernate属性

时间:2014-11-04 16:08:17

标签: java spring hibernate spring-mvc jpa

我有一个带有Spring ORM / Hibernate持久层的Spring MVC Web设置。我已将LocalContainerEntityManagerFactoryBean配置为自动扫描包上的持久性实体,因此我不需要持久性xml配置。

如何设置我的bean配置,以便显示生成的查询并在启动时使用模型更改刷新数据库?

1 个答案:

答案 0 :(得分:1)

LocalContainerEntityManagerFactoryBean扩展AbstractEntityManagerFactoryBean,其中包含setJpaProperties(Properties)方法。您可以使用此方法将自定义属性传递给此bean。

Properties properties = new Properties();
properties.put("hibernate.show_sql", "true");
properties.put("hibernate.hbm2ddl.auto", "create-drop");
entityManagerFactoryBean.setJpaProperties(properties);

或者如果您想在Spring配置文件上执行此操作:

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
    ...
    <property name="jpaProperties">
        <props>
            <prop key="hibernate.show_sql">true</prop>
            <prop key="hibernate.hbm2ddl.auto">create-drop</prop>
        </props>
    </property>
    ...
</bean>

JavaDoc