org.hibernate.AnnotationException: Unknown Id.generator
проблема
Запуск следующего генератора последовательности аннотаций Hibernate с базой данных PostgreSQL.
@Id
@Column(name="user_id", nullable=false)
@GeneratedValue(strategy = GenerationType.SEQUENCE ,generator="account_user_id_seq")
private Integer userId;
Вызывает следующее исключение НеизвестноId.generator.
Caused by: org.hibernate.AnnotationException: Unknown Id.generator: account_user_id_seq
at org.hibernate.cfg.BinderHelper.makeIdGenerator(BinderHelper.java:413)
at org.hibernate.cfg.AnnotationBinder.bindId(AnnotationBinder.java:1795)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1229)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:733)
Последовательность «account_user_id_seq» создается в базе данных PostgreSQL, что вызвало указанное выше исключение?
Решение
При объявлении стратегии аннотации Hibernate для использования «Sequences» в качестве генератора идентификаторов попробуйте также указать @SequenceGenerator, как показано ниже
@Id
@Column(name="user_id", nullable=false)
@SequenceGenerator(name="my_seq", sequenceName="account_user_id_seq")
@GeneratedValue(strategy = GenerationType.SEQUENCE ,generator="my_seq")
private Integer userId;