Hibernate中的Cache管理 - 编程入门网
时间戳机制维护读写提交事务隔离级别。可以对读/写比例高,很少更新 的数据采用该策略。
3:非严格读写(notstrict-read-write)不保证Cache和数据库之间的数据库的一致性。使用此策略 时,应该设置足够的缓存过期时间,否则可能从缓存中读出脏数据。当一些数据极少改变,并且当这些数 据和数据库有一部份不量影响不大时,可以使用此策略。 4:只读(read-only)当确保数据永不改变时,可以使用此策略。 我们确定了Hibernate Cache策略后,就要挑选一个高效的Cache提供器,它将作为插件被Hibernate调 用。Hibernate允许使用下述几种缓存插件:EhCache:可以在JVM中作为一个简单进程范围内的缓存,它 可以把缓存的数据放入内存或磁盘,并支持Hibernate中可选用的查询缓存。 OpenSymphony OSCache:和EhCache相似,并且提供了丰富的缓存过期策略。 ◆SwarmCache:可作为集群范围的缓存,但不支持查询缓存。 ◆JBossCache:可作为集群范围的缓冲,但不支持查询缓存。 在Hibernate中使用EhCache EhCache是一个纯JAVA程序,可以在Hibernate中作为一个插件引入。在Hibernate中使用EhCache需要 在Hibernate的配置文件中设置如下:
此外我们还需要在持久化类的映射文件中进行配置。例如,Group(班级)和Student(学生)是一对 多的关系,它们对应的数据表分别是t_group和t_student.现在要把Student类的数据进行二级缓存,这需 要在二个映射文件中都对二级缓存进行配置。 在Group.hbm.xml中如下,在其<set></set>中添加 <cache usage="read-write"/><!——集合中的数据被缓存——>上述文件虽然在 <set>标记中设置了<cache usage="read-write"/>,但Hibernate只是把Group相关的 Student的主键ID加入到缓存中,如果希望把整个Student的散装属性都加入到二级缓存中,还需要在 Student.hbm.xml文件的<class>标记中添加<cache>子标记。如下:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |