Управление транзакциями с помощью StatelessSession в Hibernate
У меня есть беспокойство, используя StatelessSession
а также ScrollableResults
весной приложение с зимовкой. У меня есть несколько DAO, в которых в основном используется общий объект сеанса с автопроводкой, но для одной цели мне нужно перебрать всю таблицу. Я обнаружил, что для этого эффективно использовать ScrollableResults
перебирать объекты и StatelessSession
не хранить никаких результатов, прикрепленных в памяти. Однако мне нужно сделать эту итерацию вне DAO, потому что информация из БД используется для доступа к стороннему API. Поэтому я создал методы для создания и закрытия StatelessSession
со стороны DAO. Интересно, как в этом случае мне управлять транзакциями? Кажется, что никакие транзакционные операции не нужны вообще (данные только читаются), но при проверке кода мне сказали, что транзакция может быть создана автоматически и никогда не закрыта Spring Hibernate Transaction Manager. Так стоит ли переопределять вручную или это будет бесполезная мера предосторожности?