2011-12-12 81 views
2

對於某些單元測試,我將在每次測試後刪除並重新創建整個數據庫模式。它不完美,但它的作品。但是,當我從Spring 3.0.6升級到3.1.0.RC2以獲得對Hibernate 4的支持時,我使用的方法被刪除了。在Spring中刪除和重新創建數據庫模式的新方法?

舊代碼:

@BeforeMethod 
public void setupSchema() { 
    LocalSessionFactoryBean session = (LocalSessionFactoryBean) context.getBean("&sessionFactory"); 
    session.dropDatabaseSchema(); 
    session.createDatabaseSchema(); 
} 

我究竟應該使用,而不是重新創建3.1.0.RC2數據庫模式?

編輯:請注意,這是對hibernate4 LocalSessionFactoryBean的,不Hibernate3的一個

回答

5

已棄用對於那些有興趣,今天固定這個問題。從本質上講只是使用的SchemaExport

@BeforeMethod 
public void setupSchema() { 
    LocalSessionFactoryBean session = (LocalSessionFactoryBean) context.getBean("&sessionFactory"); 
    SchemaExport export = new SchemaExport(session.getConfiguration()); 
    export.drop(false, true); 
    export.create(false, true); 
} 

希望這可以幫助別人

+0

它有幫助,謝謝 –

0

看一看這樣的:

JavaDoc for 3.1.0 RC2

的方法仍然存在於這一點。但是,還要注意java文檔中有兩個LocalSessionFactoryBean(請參閱左側滾動列表)!

[編輯]如下面所述的方法中提到在休眠4

+1

其實,如果你仔細看,還有一個用於Hibernate3的,一個用於hibernate4。我使用的是hibernate4。我更新了問題 – TheLQ

相關問題