无法使用Hibernate进行缓存

时间:2016-03-23 04:08:38

标签: java hibernate caching ehcache

我正在使用Hibernate作为我的二级缓存(Ehcache),但二级缓存仅适用于session.load类型,当我编写自己的查询时,它无效。

不工作表

String hql = "FROM Personalisation E WHERE E.userId = "+id;
Query query = session.createQuery(hql);
List<?> results = query.list();

使用其他表格

Employee emp = session.load(Employee.class, id);

我的ehcache.xml

<?xml version="1.0"?>  
<ehcache>  
<defaultCache   
maxElementsInMemory="100"   
eternal="false"   
timeToIdleSeconds="120"   
timeToLiveSeconds="200" />  

<cache name="com.intu.Employee"   
maxElementsInMemory="100"   
eternal="false"   
timeToIdleSeconds="10"   
timeToLiveSeconds="200" />  

<cache name="com.intu.Personalisation"   
maxElementsInMemory="100"   
eternal="false"   
timeToIdleSeconds="10"   
timeToLiveSeconds="200" />  

</ehcache> 

0 个答案:

没有答案