Использование последовательности базы данных для столбцов, не связанных с ID, в Hibernate JPA
при работе с Hibernate в качестве провайдера JPA, вы можете столкнуться с необходимостью генерировать значения для столбцов, которые не являются частью идентификатора. К сожалению, аннотация @GeneratedValue, обычно используемая для автоматического инкюрения первичных ключей, не применима в этом сценарии.
, во-первых, важно понимать, что Hibernate/JPA не генерирует значения для не ID. Аннотация @GeneratedValue используется исключительно для управления первичным поколением ключей. Вместо этого ожидаются значения, сгенерированные базой данных. Затем рассматриваемый столбец, не связанный с ID, может быть связан с этой суррогатной сущностью с использованием отношения Onetoone.
Пример реализации:
// Суррогатная ключевая сущность @Сущность суррогата публичного класса { @Идентификатор @GeneratedValue (...) частное длинное число; } // главная сущность @Сущность Public Class Myentity { @Идентификатор частный длинный идентификатор; @Onetoone (...) Частная суррогата Myval; }
// Surrogate Key Entity @Entity public class SurrogateEntity { @Id @GeneratedValue(...) private Long number; } // Main Entity @Entity public class MyEntity { @Id private Long id; @OneToOne(...) private SurrogateEntity myVal; }]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3