读书人

Hibernate_缓存技术,1,二,三级

发布时间: 2012-10-18 13:46:55 作者: rapoo

Hibernate_缓存技术,一,二,三级

1???????? a)???????? listb)???????? iterate先取 ID,等用到的时候再根据ID来取对象

c)???????? session中list第二次发出,仍会到数据库询

d)???????? iterate 第二次,首先找session 级缓存

2???????? 一级缓存和二级缓存和询缓存(面试题)(详见hibernate_3000_Hibernate_3KindsOf_Cache)

a)???????? 什么是缓存

b)???????? 什么是一级缓存,session级别的缓存

c)???????? I什么是二级缓存,SessionFactory级别的缓存,可以跨越session存在

????????????????????? i.??????? 经常被访间

????????????????? ii.??????? 改动不大不会经常改动

?????????????? iii.??????? 数重有限

d)???????? 打开二级缓存

<property

name= "cache.use_second_level_cache">true</property>

<property

name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property>

e)???????? f)???????? g)???????? 如果要query用二级缓存,需打开查询缓存

<property name="cache.use_query_cache">true</property>

调用Query的setCachable (true)方法指明使用二级缓存

例如:session.createQuery("from Category").setCacheable(true).list();

h)???????? 缓存算法:(纯为了面试)

????????????????????? i.??????? LRU? LFU ?FIFO

1.???????????? Least Recently Used 最近很少被使用

2.???????????? Least Frequently Used3.???????????? First In First Out 按顺序替换

????????????????? ii.??????? memoryStoreEvictionPolicy = "LRU" (ehcache.xml中配置)

读书人网 >编程

热点推荐