Фрагмент кода, указанный в ответе Божо, устарел в Hibernate 4.
Согласно Hibernate JavaDoc вы можете использовать org.hibernate.Cache.evictAllRegions()
:
Извлекать данные из всех областей запросов.
Использование API:
Session session = sessionFactory.getCurrentSession();
if (session != null) {
session.clear(); // internal cache clear
}
Cache cache = sessionFactory.getCache();
if (cache != null) {
cache.evictAllRegions(); // Evict data from all query regions.
}
Кроме того, вы можете удалить все данные из определенной области:
org.hibernate.Cache.evictCollectionRegions()
org.hibernate.Cache.evictDefaultQueryRegion()
org.hibernate.Cache.evictEntityRegions()
org.hibernate.Cache.evictQueryRegions()
org.hibernate.Cache.evictNaturalIdRegions()
Возможно, вы захотите проверить интерфейс JavaDoc для hibernate Cache (Hibernate 4.3) .
А также, удаление кэша второго уровня из руководства разработчика hibernate (4.3).