我想为某些学习目的配置没有二级缓存的查询缓存,因为我已经读过它可以完成,但不知何故,查询缓存仅适用于二级缓存。
这是我的配置
<property name="cache.use_query_cache">true</property>
实体类是
@Entity
public class Company {}
但是当我这样做的时候
session = factory.openSession();
Query getQuery=session.createQuery("from Company where companyId=1");
getQuery.setCacheable(true);
Object company2 = getQuery.uniqueResult();
session.close();
session = factory.openSession();
getQuery=session.createQuery("from Company where companyId=1");
getQuery.setCacheable(true);
company2 = getQuery.uniqueResult();
session.close();
两个单独的查询被触发。
我一做
@Entity
@Cacheable
@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)
public class Company {}
查询缓存工作,但它也启用二级缓存。那么如何在不开启二级缓存的情况下配置查询缓存呢?