Рубрики
Без рубрики

Как повторить транзакции JPA после исключения OptimisticLockException

Автор оригинала: Vlad Mihalcea. Вступление Это третья часть серии оптимистичных блокировок, и я расскажу, как мы можем реализовать механизм автоматической повторной попытки при работе с репозиториями JPA. Вы можете найти вводную часть здесь и реализацию MongoDB здесь . Повторить попытку JPA требует выполнения кода контекста сохранения внутри транзакции, и если наш менеджер транзакций поймает Исключение […]

Рубрики
Без рубрики

Как предотвратить исключение OptimisticLockException с менее оптимистичной блокировкой версии Hibernate

Автор оригинала: Vlad Mihalcea. В моем предыдущем посте я продемонстрировал, как вы можете масштабировать оптимистическую блокировку с помощью разделения проблем записи. Менее оптимистичная блокировка версий-одна из менее известных функций гибернации. В этом посте я объясню как хорошие, так и плохие стороны этого подхода. Оптимистическая блокировка обычно связана с логической или физической последовательностью синхронизации как по […]

Рубрики
Без рубрики

Как устранить исключение OptimisticLockException в JPA и спящем режиме

Автор оригинала: Vlad Mihalcea. Повторяемые чтения на уровне приложения подходят для предотвращения потерянных обновлений в веб-разговорах. Включение оптимистичной блокировки на уровне сущности довольно просто. Вам просто нужно пометить одно свойство логических часов (обычно целочисленный счетчик) аннотацией JPA @Version , а Hibernate позаботится об остальном. Оптимистическая блокировка удаляет все входящие изменения, относящиеся к более старой версии […]