TA的每日心情 | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
applicationContext.xml:* ^$ s* I; j5 L; \" \* S) N
- <prop key="hibernate.cache.use_second_level_cache">true</prop> <!--设置缓存机制为二级缓存 -->
8 m3 o# N( @' P - <prop key="hibernate.cache.use_query_cache">true</prop> <!--启动查询缓存 -->
, U# ^* v) L( @8 n) _3 V$ u - <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop> <!--设置二级缓存的Provider类 -->/ T' F' _" w2 K D/ b
- <prop key="hibernate.cache.provider_configuration_file_resource_path">WEB-INF/classes/ehcache.xml</prop> <!--设置缓存的配置文件路径 -->
复制代码 / `2 E; G. ^: {+ k
将ehcache.xml文件放到src下面,并配置ehcache.xml文件如下:0 W8 ~: h0 X) s g0 ?3 `
- <ehcache>
( i! k+ ?7 e' i( } - <diskStore path="D:\cache" />" @: ^( b6 Q' Z3 a
8 I# s/ f' ]2 E# E; v: ~2 T% A: m T- <defaultCache maxElementsInMemory="10000" eternal="false"
6 ^, M' x" T# J* }* P" V - timeToIdleSeconds="3600" timeToLiveSeconds="3600"
: w% a! t% M7 ?9 k3 `9 R - overflowToDisk="true" diskPersistent="false"+ P3 Q" x( ^' j* ~6 z7 @
- diskExpiryThreadIntervalSeconds="120"3 s5 y1 T( j; y% Z! _6 K. T
- memoryStoreEvictionPolicy="LRU" />( D6 D' ]6 a b- k) x
- <cache name="net.52itstyle.entity.DataAttr" ; C! V1 B A" X6 S1 @
- maxElementsInMemory="800" eternal="false" overflowToDisk="false"
( _* Z" {' m3 V2 |9 s( U7 u - timeToIdleSeconds="3600" timeToLiveSeconds="3600" />
+ |$ @$ {- s. k- J( m- q - </ehcache>
复制代码 在设置了缓存机制的类的xml文件中添加一段代码<cache usage="read-write" region="net.52itstyle.entity.SmProduct/>"代码如下:3 Y5 O( R1 \) \% S9 Y z3 k% t; T
- <hibernate-mapping>
# C4 }! ?* D+ T) {/ [ - <!--SM_PRODUCT表的hibernate映射描述文件 -->. }( E1 b! Y' ~4 O" N" q2 N
- <class name="net.nk.entity.SmProduct" table="SM_PRODUCT" >
@) p! N- e& a& D# l/ ?* u - <cache usage="read-write" region="net.nk.entity.SmProduct"/>- g& |8 i2 F+ \% c* j- ~6 K
- <!-- ID -->
* ?" W& o1 J3 h, J - <id name="id" type="string">2 V: P+ G$ K' A1 f
- <column name="ID" />/ B/ h0 Q8 Y3 f$ c
- <generator class="assigned" />
3 u1 b8 o0 z9 g; c" k" s# o6 M; b - </id>
复制代码 / h. |! }: @9 y) n' ~/ {
最后可以 通过放开hibernate的show_sql来查看是否缓存机制生效了5 K% f$ p- f |( g6 e x4 I$ [" m
; C: o2 _; [+ h/ C2 i- y( E( V4 R7 L6 d; O9 a# Y
|
|