Есть ли какой-либо стандартный способ (или замена Open Session [EntityManager] in View
) для использования классов, которые зависят от отложенной инициализации (fetch = FetchType.LAZY)
сущностей в следующих двух случаях использования:
В тестовых примерах JUnit
В кварцевых работах
Для обоих описанных выше сценариев шаблон OSIV не будет работать, так как в систему не поступает веб-запрос. Как заставить ленивую загрузку работать в таких ситуациях?
PS: Spring OpenEntityManagerInViewFilter
и OpenEntityManagerInViewInterceptor
оба ориентированы на веб-запросы.
- Я не могу предварительно выбрать все такие отношения/сущности, выполнив фиктивную операцию
get
только для того, чтобы загрузить ее до закрытия сеанса в репозитории (DAO). - Я знаю, для JUnit я могу вручную открывать/закрывать EM в
@Before
/@after
. Но я ищу что-то более элегантное и стандартное.