Java hibernate createSQLQuery是否使用CacheQuery?
我可以知道当我手动执行“createSQLQuery”时如何使用cacheQuery吗?以上内容不会缓存结果。show\u sql仍然显示从数据库获取的每个请求尝试配置ApplicationContextJava hibernate createSQLQuery是否使用CacheQuery?,java,hibernate,ehcache,Java,Hibernate,Ehcache,我可以知道当我手动执行“createSQLQuery”时如何使用cacheQuery吗?以上内容不会缓存结果。show\u sql仍然显示从数据库获取的每个请求尝试配置ApplicationContext Query query=getHibernateTemplate().getSessionFactory().getCurrentSession().createSQLQuery( "select... getHibernateTemplate().setCa
Query query=getHibernateTemplate().getSessionFactory().getCurrentSession().createSQLQuery(
"select...
getHibernateTemplate().setCacheQueries(true);
List result= query.list();
getHibernateTemplate().setCacheQueries(false);
return result;
org.hibernate.cache.EhCacheProvider
真的
真的
AFAIK在使用createSQLQuery
时,如果setCacheable
为true
,或者hibernate在施放时混淆,则必须使用显式的.addScalar
或.addEntity
。除此之外,我的理解是它应该有效。已经补充了这一点。它只适用于DetachedCriteria,但对于上面这样的手动sql,它会起作用吗?
<prop key="hibernate.cache.provider_class">org.hibernate .cache.EhCacheProvider</prop>
<prop key="hibernate.cache.use_second_level_cache">true</prop>
<prop key="hibernate.cache.use_query_cache">true</prop>