@Column
JPA @Columnаннотации для основных атрибутов сущностей, как String, Integer, Date.
Таким образом, если имя атрибута сущности отличается от имени основного столбца, вам необходимо использовать @Columnаннотацию для явного указания имени столбца, например:
@Column(name="created_on")
private LocalDate createdOn;
@JoinColumn
@JoinColumnАннотаций используется для настройки имени столбца внешнего ключа , и он может быть использован только с ассоциацией лица.
Итак, в вашем случае, поскольку вы используете @ManyToOneассоциацию, вам нужно использовать @JoinColumn:
@ManyToOne(fetch=FetchTYpe.LAZY)
@JoinColumn(name="LicenseeFK")
private Licensee licensee;
Обратите внимание, что мы установили fetchатрибут, FetchType.LAZYпотому что по умолчанию FetchType.EAGERиспользуется, и это ужасная стратегия. Для получения более подробной информации о том, почему FetchType.LAZYпо умолчанию лучше, ознакомьтесь с этой статьей .