在persistence.xml中使用以下配置
<property name="eclipselink.flush-clear.cache" value="Drop"/>
<property name="eclipselink.cache.shared.default" value="false"/>
<property name="eclipselink.cache.shared" value="false"/>
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
根据docs即配置:
EclipseLink将尝试删除所有表,然后创建所有表。 如果遇到任何问题,EclipseLink将遵循默认设置 特定数据库和JDBC驱动程序组合的行为,然后 继续下一条语句。
如果架构频繁更改或 在测试过程中需要清除现有数据时。
注意:使用拖放创建将删除表中的所有数据 当它们掉落时。您永远不要在生产中使用选项 数据库中具有宝贵数据的架构。如果架构已更改 明显地,数据库中可能存在旧的约束, 防止丢失旧表。这可能需要旧的 架构通过其他机制删除。
使用以下依赖项:
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpa.modelgen.processor</artifactId>
<version>2.7.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpa</artifactId>
<version>2.7.3</version>
</dependency>
我在做什么错了?