繁体   English   中英

Spring MVC中的Hibernate自动更新表

[英]Hibernate auto update table in Spring MVC

我的Spring MVC项目中具有以下配置:

<bean id="datasource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="url" value="jdbc:mysql://localhost:3306/tracDB"/>
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="username" value="root"/>
    <property name="password" value=""/>
</bean>

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
    <property name="persistenceUnitName" value="spring-practice"/>
    <property name="packagesToScan" value="com.paweljarosz.trac.data"/>
    <property name="dataSource" ref="datasource"/>
    <property name="jpaVendorAdapter">
        <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
            <property name="showSql" value="true"/>
            <property name="database" value="MYSQL"/>

        </bean>
    </property>

</bean>

<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
    <property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean> 

我希望Hibernate基于实体自动创建和更新数据模型。 有人知道如何解决此配置问题吗?

我想你需要这样的东西

<property name="jpaVendorAdapter">
   <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
      <property name="database" value="MYSQL"/>
      <property name="showSql" value="true"/>
      <property name="generateDdl" value="true"/>
   </bean>
</property>

另外,大多数这些事情也可以直接在JPA属性中设置。 Spring也允许您通过jpaVendorProperties进行此jpaVendorProperties 请参阅休眠配置属性以供参考。

例如:

<property name="jpaProperties">
   <props>
     <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
       <prop key="hibernate.use_sql_comments">true</prop>
       <prop key="hibernate.format_sql">true</prop>
       <prop key="hibernate.generate_statistics">true</prop>
       <prop key="hibernate.jdbc.fetch_size">100</prop>
       <!-- This one below is what you're looking for-->
       <prop key="hibernate.hbm2ddl.auto">create</prop>
  </props>
</property>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM