Использование @Transactional с Hibernate - PullRequest
0 голосов
/ 18 сентября 2018

Я использую Hibernate для REST API. Прямо сейчас все транзакции обрабатываются путем явного вызова beginTransaction и Transactions.commit. Транзакция откатывается в случае сбоя. Я хочу использовать @Transactional вместо всех beginTransactions и совершать транзакции. Может кто-нибудь сказать мне, как я могу интегрировать @Transactional в моем спящем режиме. Я использую mysql для запросов к базе данных.

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Вы можете использовать Spring Framework с Hibernate Integration.Преимущество заключается в том, что Spring управляет сеансом Hibernate и всеми низкоуровневыми вещами, которыми мы должны управлять вручную в режиме гибернации, например, гранулированный коммит и т. Д. Вот пример этого.это более старый репозиторий, поэтому используются более старые версии Spring и Hibernate, но вы можете обновить его здесь

0 голосов
/ 18 сентября 2018

Вы можете аннотировать ваш метод запроса с помощью @ Transactional , чтобы вы могли открыть, зафиксировать и закрыть транзакцию, когда ваш метод завершится.

Будьте осторожны с уровнями изоляции (https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/transaction/annotation/Transactional.html#isolation--), поскольку он указывает, когда Spring создаст новый сеанс для вашей транзакции, или просто использует уже открытый.

Когда вы вызываете исключение для вашего метода, транзакция получает автоматический откат, и выхорошо :) 1011 *

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