Я вижу два класса для блокировки в спящем режиме -Должны ли мы использовать LockOptions вместо LockMode в запросе на спящий режим?
LockOptions
LockMode
В чем разница между ними? Когда использовать каждый?
Я вижу два класса для блокировки в спящем режиме -Должны ли мы использовать LockOptions вместо LockMode в запросе на спящий режим?
LockOptions
LockMode
В чем разница между ними? Когда использовать каждый?
У меня нет однозначного ответа, но для MySQL единственный способ сгенерировать for update
SQL заявление было:
query.setLockOptions(LockOptions.UPGRADE);
Ссылаясь на сессии Javadoc http://docs.jboss.org/hibernate/orm/4.2/javadocs/, параметр LockMode следует заменить LockOptions.
Вот выдержка из javadoc.
@Deprecated нагрузка объекта (строка EntityName, Сериализуемый идентификатор, LockMode LockMode) Осуждаемых. Параметр LockMode следует заменить на LockOptions Возвращает постоянный экземпляр данного класса сущности с данным идентификатором, получая указанный режим блокировки, предполагая, что экземпляр существует.
Параметры:
EntityName - упорная класс
идентификатор - действительный идентификатор существующего постоянного экземпляра класса
LockMode - уровень блокировки
Возвращает:
постоянный экземпляр или прокси
Вы уверены? Или вы говорите об этой ошибке? http://stackoverflow.com/questions/3028478/how-to-specify-pessimistic-lock-with-criteria-api – Reddy
Да, скорее всего, это ошибка, о которой вы упоминаете. Благодарю. – cherouvim