hibernate annoation(十一 缓存Ehcache 采用annoation)
2009-09-18 00:00:00 来源:WEB开发网四,在classpath下添加ehcache.xml
写道
<ehcache>
<diskStore path="java.io.tmpdir"/>
<defaultCache
maxElementsInMemory="10000" <!-- 缓存最大数目 -->
eternal="false" <!-- 缓存是否持久 -->
overflowToDisk="true" <!-- 是否保存到磁盘,当系统当机时-->
timeToIdleSeconds="300" <!-- 当缓存闲置n秒后销毁 -->
timeToLiveSeconds="180" <!-- 当缓存存活n秒后销毁-->
diskPersistent="false"
diskExpiryThreadIntervalSeconds= "120"/>
</ehcache>
测试:
Java代码
@Entity
@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)
public class B {
private int id;
private String bname;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
public int getId() {
return id;
}
public String getBname() {
return bname;
}
...
}
并配置到cfg文件中:<mapping class="com.eric.po.B" />
main方法:
Java代码
public static void main(String[] args) throws Exception {
getTest();
getTest();
}
Java代码
public static void getTest() throws Exception {
Session session = HibernateSessionFactory.getSession();
Query q = session.createQuery("from B where id>?");
q.setParameter(0, 10);
q.setCacheable(true); 需要设置此属性
List list = q.list();
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
B a2 = (B) iterator.next();
System.out.print(a2.getId() + "/");
}
HibernateSessionFactory.closeSession();
}
- ››Hibernate高级应用:性能优化策略
- ››hibernate 多对多关系详解(包括中间表,一对多字表...
- ››Hibernate实现mysql数据库limit查询方法
- ››Hibernate 之父:是时候升级到Java EE 6了
- ››Hibernate查询
- ››Hibernate和iBATIS比较(摘自网络)
- ››Hibernate使用Projections进行聚合操作
- ››hibernate中java.util.Date类型映射
- ››hibernate中update与saveOrUpdate的区别
- ››Hibernate各种映射关系总结
- ››十一归来 可牛教你快速美化照片
- ››十一假期,乐鱼陪你度过闲暇时光
更多精彩
赞助商链接