[英]Hibernate does not create my tables
我使用Spring和Hibernate時遇到了一個奇怪的問題。 我在hibernate.cfg.xml中開始使用Hibernate:
<property name="hbm2ddl.auto">create</property>
它工作正常,Hibernate成功創建了數據庫中所需的表。 現在我使用Spring,我在applicationContext.xml中用於hibernate的bean看起來像這樣:
<bean id="mySessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="myDataSource" />
<property name="mappingResources">
<list>
<value>domain/Entity.hbm.xml</value>
<value>domain/Service.hbm.xml</value>
<value>domain/User.hbm.xml</value>
<value>domain/Arcos.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.hbm2dll.auto">create</prop>
</props>
</property>
</bean>
我不得不在某些時候刪除Hibernate創建的表,但Spring不會創建它們。 我嘗試使用create-drop
而不是create
(以防萬一有人問)。 自從我使用Hibernate后,我的DB Schema發生了變化,我使用了很多getBeans("...");
在我的代碼中,所以有點困擾我重用我的Hibernate-only版本只是為了創建表。 我也可以手工創建表,但是使用這些框架有什么意義呢?
我確定我在某處做錯了什么,但我找不到它。 控制台提示錯誤,指出沒有名為“表名” 的表 ,因此它成功連接到數據庫。
謝謝你的時間 :)
hibernate.hbm2dll.auto
- > hibernate.hbm2ddl.auto
DLL =動態鏈接庫
DDL =數據定義語言
您的代碼中存在拼寫錯誤
<prop key="hibernate.hbm2ddl.auto">create</prop>
在解決方案中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.