@Id из @GeneratedValue (стратегии = GenerationType.SEQUENCE), объединенного со строкой - PullRequest
0 голосов
/ 02 февраля 2012

Мне нужно отобразить устаревшую таблицу базы данных, в которой есть какой-то странный первичный ключ, сгенерированный из последовательности, объединенной со статической строкой.

Oracle Sequence генерирует идентификатор в соответствии с нормой '.но столбец идентификатора рассматриваемой таблицы представляет собой объединение этого порядкового номера и строки AA.Можно ли использовать JPA для создания значения идентификатора в том же формате при сохранении новых объектов?.

Последовательность Oracle генерирует инкрементные числа, 1, 2, 3, `4 ..и т. д.

Идентификатор таблицы должен быть AA_1, AA_2, AA_3, AA_4 ... и т. д.

Я понимаю, как создатьидентификатор из последовательности путем аннотирования поля id в классе, и я предполагаю, что мне нужно написать собственный класс генерации идентификатора, который получает последовательность и присоединяет к ней строку AA.

1 Ответ

2 голосов
/ 02 февраля 2012

Вам нужно будет создать собственный генератор идентификаторов, расширив интерфейс IdentifierGenerator.

Затем можно использовать последовательность Oracle, чтобы получить ваше значение, а затем выполнить объединение.

Затем вы можете указать свой класс генератора в ваших сопоставлениях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...