我需要知道使用 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 之外的其他持久性库吗?