У меня есть два поля отображаются в одном столбце:Hibernate - разные значения двух полей отображаются в одном столбце
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "database_id", nullable = false, insertable = true, updatable = true)
private Database database;
@Column(name = "database_id", nullable = false, insertable = false, updatable = false)
private long databaseId;
И когда я прочитал объект сущности из БД: entityManager.find(entityClass, id);
Иногда entity.getDatabase().getId()
имеет правильное значение, но entity.getDatabaseId() = 0;
И Я не могу решить, почему это происходит.
Итак, в чем причина этого странного поведения?
Точно так же эквивалент базы данных внешним ключом является ссылкой Entity в JPA, вы не должны управлять ими как базовые столбцы. –