Как получить сущность не из Persistence context?
Java 17, Spring Boot 2.7.8, Hibernate.
Каким образом я могу заставить Hibernate отдать сущность не из Persistence context, то есть заставить его не использовать кэш первого уровня в запросе?
Я знаю, что можно использовать em.detach(T entity), а есть другой вариант, т.е. не очищая контекст получить искомую сущность в её актуальном виде из БД?
Ответы (1 шт):
Автор решения: NatKot
→ Ссылка
Кэш первого уровня включен по-умолчанию и его нельзя отключить. При закрытии сессии кэш сессии очищается. Для сессии есть методы evict(), clear(), contains() для работы с кэшем.
Для отключения кэша второго уровня проперти spring.jpa.properties.hibernate.cache.use_second_level_cache=false