【问题标题】:How can I let tables be created automatically from entity classes with PostgreSQL and JPA?如何使用 PostgreSQL 和 JPA 从实体类自动创建表?
【发布时间】:2012-05-02 11:14:38
【问题描述】:

我需要知道是否可以使用 PostgreSQL 而不是 Derby 自动创建表。

故事:我用 Hibernate 和 Derby 成功建立了一个 NetBeans Java 项目。我已经从我的实体类创建了 JPA 控制器类。为了测试项目,我为这些控制器类创建了 JUnit 测试类。

第一次运行这些测试类时,表将在 Derby 中自动创建。执行测试后,我可以在数据库浏览器中看到表格。

persistence.xml 中有这样一行

<property name="hibernate.connection.url" value="jdbc:derby://localhost:1527/MySampleDb;create=true"/>

设置连接并在需要时指示要创建的表(注意行尾的“;create=true”)。

当使用 PostgreSQL 而不是 Derby 时。这不再起作用了。添加 ";create=true" 会破坏代码。 PostgreSQL 是否可以自动创建表?我应该使用除 Hibernate 之外的其他持久性库吗?

【问题讨论】:

    标签: hibernate postgresql jakarta-ee persistence


    【解决方案1】:

    是的。这个有可能。您需要将hibernate.hbm2ddl.auto 属性设置为create

            <property name="hibernate.hbm2ddl.auto" value="create"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-29
      • 2020-01-20
      • 2016-10-07
      • 2011-03-04
      相关资源
      最近更新 更多