LocalSessionFactoryBean

LocalSessionFactoryBean

对于某些单元测试,我将在每次测试后删除并重新创建整个数据库架构。它并不完美,但可以正常工作。但是,当我从Spring 3.0.6升级到3.1.0.RC2以获得对Hibernate 4的支持时,我使用的方法被删除了。

旧代码:

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

我应该用什么代替3.1.0.RC2中的数据库模式?

编辑:注意,这是针对hibernate4 LocalSessionFactoryBean的,而不是针对hibernate3的

最佳答案

对于那些感兴趣的人,今天解决此问题。本质上只使用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);
}

希望这可以帮助某人

08-16 16:24