您可以在persistence.xml中设置表,以便在启动时删除并重新创建。是否有可能更有选择性地让一些表保持填充并重新创建其他表?
答案 0 :(得分:1)
幸运的是,从JPA 2.1开始,使用以下一组属性支持这种功能(甚至更多):
<property name="javax.persistence.schema-generation.database.action"
value="drop-and-create"/>
<property name="javax.persistence.schema-generation.create-source"
value="script"/>
<property name="javax.persistence.schema-generation.drop-source"
value="script"/>
<property name="javax.persistence.schema-generation.drop-script-source"
value="META-INF/drop-script.sql"/>
<property name="javax.persistence.schema-generation.create-script-source"
value="META-INF/create-script.sql"/>
<property name="javax.persistence.sql-load-script-source"
value="META-INF/load-script.sql"/>
在上面的示例中,javax.persistence.schema-generation.drop-source
通知提供程序使用脚本来创建,删除或加载相应属性值中指定的数据库模式:
DROP TABLE ...
语句CREATE TABLE ...
语句INSERT INTO ...
语句我希望它有所帮助。