NB:Spring Boot 2.1.10 + Spring Cloud Greenwich.SR3
我有两个Spring Data JPA服务访问同一个外部数据库(MySQL)并共享一个公共域:
@Entity
@Data
public class Person {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "first_name") @NotNull
private String firstname;
private LocalDate birth;
private Integer votes = 0;
}
在第一个服务(生产者)中,我添加了一个data.sql用于样本插入:
insert into person(first_name) values ('foobar');
insert into person(first_name) values ('scoubidou');
以及以下属性:
spring.jpa.hibernate.ddl-auto=create-drop
spring.datasource.initialization-mode=always
在第二个服务(消费者)中,我只想使用架构而不在启动时对其进行修改,因此我使用了这些属性:
spring.jpa.hibernate.ddl-auto=validate
spring.datasource.initialization-mode=never
启动生产者时,将创建数据库模式并用示例实体填充。但是,当我启动使用者时,实体表将被截断。请问有人知道如何清空桌子以及如何避免它吗?