Примечание: Spring Boot 2.1.10 + Spring Cloud Greenwich.SR3
У меня есть две JPA-службы Spring Data, которые обращаются к одной внешней базе данных (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
При запуске производителя схема БД создается и заполняется образцами сущностей. Но когда я запускаю потребителя, таблица сущностей усекается. Кто-нибудь знает, как стол опустошится и как этого избежать, пожалуйста?