Управление последовательностью идентификатора строки в объекте весенней загрузки - PullRequest
0 голосов
/ 25 марта 2020

Я работаю над базой данных oracle для управления сущностью JPA с помощью первичного ключа String. Я не могу изменить тип на PK на Long или int в базе данных, поэтому я хочу знать, как настроить последовательность pk в моей сущности JPA, я пробовал это:

@Id
@SequenceGenerator(name="SEQ_ID", sequenceName = "SEQ_ID" )
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SEQ_ID")
@Column(name="SEQ_ID",unique=true, nullable = false,updatable = false)
private String id;

, но когда сохраняя новую сущность, я получил ошибку: Неизвестный целочисленный тип данных для идентификаторов: java .lang.String Кто-нибудь может мне помочь, пожалуйста?

1 Ответ

0 голосов
/ 25 марта 2020

Попробуйте удалить @GeneratedValue и @SequenceGenerator. Также, замечание, @Id автоматически установит unique=true, nullable = false,updatable = false, чтобы вы могли удалить их из @ Column.

В противном случае, вы можете проверить эту статью для получения более подробной информации о создании пользовательский генератор строк https://vladmihalcea.com/how-to-implement-a-custom-string-based-sequence-identifier-generator-with-hibernate/

...