每次运行Spring Boot应用程序时,如何从头开始创建jv_snapshot
等Javers表?
答案 0 :(得分:1)
JaVers创建表,如果它们不存在,并且永远不会删除它们。在Hibernate中没有create-drop
选项。对于测试,我们建议使用内存中的db(H2)并在新的空数据库实例上运行每个测试。
答案 1 :(得分:0)
是的,它会自动创建。
答案 2 :(得分:0)
我遇到了同样的问题,因为我想使用postgres
在我的开发环境中为Spring Boot应用程序的每次启动从JaVers中清除所有数据。
我在application.properties
中进行如下设置:
spring:
profiles: dev
jpa:
hibernate:
ddl-auto: create-drop
datasource:
initialization-mode: always
continue-on-error: true
由于initialization-mode
现在处于活动状态,因此Spring boot将查看data.sql
下的文件src/main/ressources
并在其中运行SQL。
TRUNCATE jv_commit CASCADE;
TRUNCATE jv_commit_property CASCADE;
TRUNCATE jv_global_id CASCADE;
TRUNCATE jv_snapshot CASCADE;
即使表不存在,由于continue-on-error
的设置,Spring Boot仍将启动。