Я использую Spring Boot 2.x, Spring Data REST, Hibernate (5.2 / 5.3).
У меня есть эти две сущности:
@Entity
public class PaymentTerm extends AbstractEntity {
@NotBlank
@Column(nullable = false)
private String name;
@NotBlank
@Column(nullable = false, unique = true)
private String code;
@NotNull
@Column(nullable = false, columnDefinition = "BIT DEFAULT 0")
private boolean endOfMonth = false;
@NotNull
@Enumerated(EnumType.STRING)
@Column(nullable = false)
private PaymentType paymentType;
@ElementCollection
private Set<PaymentDue> paymentsDue = new HashSet<>();
и
@Embeddable
public class PaymentDue {
@Min(0)
@NotNull
@Column(nullable = false)
private int days = 0;
@Min(1)
@Max(100)
@NotNull
@Column(nullable = false)
private BigDecimal percentage = new BigDecimal(100);
Hibernate генерирует этот первичный ключ для встроенной коллекции:
Я хотел бы изменить имя первичного ключа. Возможно ли это как-то?
Я знаю, что есть аннотация @AttributeOverride
, но она не решает мою проблему.