簡體   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