【问题标题】:Reset Database in JPA Hibernate with SPRING MVC使用 SPRING MVC 在 JPA Hibernate 中重置数据库
【发布时间】:2013-04-24 09:48:38
【问题描述】:

我有一个要求,我想清除整个数据库表而不是继续前进。

我在使用 LocalSessionFactoryBean 的休眠中找到了以下解决方案。

https://code.google.com/p/ormunit/source/browse/trunk/ormunit-hibernate/src/main/java/net/chrisrichardson/ormunit/hibernate/ResetDatabaseByRecreatingSchemaStrategy.java

但是我在 Hibernate 上使用 JPA,结果我有 LocalContainerEntityManagerFactoryBean。

谁能指导我,我如何使用 JPA over hibernate 实现类似的解决方案。

动机是重置数据库

【问题讨论】:

  • 您想在启动时还是在运行时执行此操作?
  • 你使用的是什么 JPA 实现?
  • 我想在运行时这样做

标签: hibernate jpa spring-mvc


【解决方案1】:

使用休眠,您可以设置<property name="hbm2ddl.auto">create</property> 或create-drop。

您也可以使用dbunit

【讨论】:

    【解决方案2】:

    我用过

    架构导出

    为了解决这个问题,

    LocalContainerEntityManagerFactoryBean localSessionFactoryBean = getLocalSessionFactoryBean(applicationContext);
    
            Configuration conf = new Ejb3Configuration().configure(
                    localSessionFactoryBean.getPersistenceUnitInfo(), null)
                    .getHibernateConfiguration();
            SchemaExport export = new SchemaExport(conf, localSessionFactoryBean
                    .getDataSource().getConnection());
            export.create(true, true);
    
    
    public LocalContainerEntityManagerFactoryBean getLocalSessionFactoryBean(
                ApplicationContext applicationContext) {
    
            return (LocalContainerEntityManagerFactoryBean) applicationContext
                    .getBean(LocalContainerEntityManagerFactoryBean.class);
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-26
      • 2012-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多