управлять последовательностью в спящем режиме - PullRequest
0 голосов
/ 28 февраля 2012

У меня есть таблица БД с идентификатором в качестве первичного ключа.
В объекте, который я определил, получатель colomn использует @ Id
Когда пользователь создает новую строку, ему назначается новый идентификатор.
но он также назначает новый идентификатор старому объекту.

Таким образом, когда я повторяю список, используя

for(){
    session.save(myO);
}

Я получаю новые строки в БД для новых элементов, а также новые строки для старых элементов. Любая помощь? Благодарю.

Ответы [ 2 ]

1 голос
/ 28 февраля 2012

Javadoc говорит:

Сохраняет данный временный экземпляр, сначала назначая сгенерированный идентификатор.

Вы должны вызвать save насуществующий отдельный экземпляр.save - это сохранение новой сущности.Используйте saveOrUpdate или merge.

0 голосов
/ 28 февраля 2012

сначала создать последовательность в базе данных, как показано ниже

СОЗДАТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ SEQ_MFILTERGROUP MINVALUE 1 MAXVALUE 99 УВЕЛИЧЕНИЕ ЗА 1 ЗАПУСК С 1 КЭШОМ 20;

generator class = "sequence">

SEQ_MFILTERGROUP

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