Kevin.Zhong

彪悍的人生不需要解释,彪悍的代码不需要测试。

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  17 随笔 :: 12 文章 :: 14 评论 :: 0 Trackbacks
1.加入hibernate-memcached.jar及相关jar包(具体见http://code.google.com/p/hibernate-memcached/)

2.在applicationContext.xml中配置
............
    
<bean id="entityManagerFactory"
        class
="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        
<property name="dataSource" ref="dataSource" />
        
<property name="jpaVendorAdapter">
            
<bean
                
class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                
<property name="showSql" value="${jpa.showSql}" />
                
<property name="generateDdl" value="${jpa.generateDdl}" />
                
<property name="database">
                    
<util:constant
                        
static-field="org.springframework.orm.jpa.vendor.Database.ORACLE" />
                
</property>
            
</bean>
        
</property>
        
<property name="jpaProperties">
            
<props>
                
<prop key="hibernate.max_fetch_depth">3</prop>
                
<prop key="hibernate.cache.use_second_level_cache">
                    true
                
</prop>
                
<prop key="hibernate.cache.use_structured_entries">
                    true
                
</prop>
                
<prop key="hibernate.cache.use_query_cache">true</prop>
                
<prop key="hibernate.cache.provider_class">
                    com.googlecode.hibernate.memcached.MemcachedCacheProvider
                
</prop>
                
<prop key="hibernate.memcached.servers">
                    10.1.19.132:33001 10.1.19.132:33002 10.1.19.132:33003
                
</prop>
            
</props>
        
</property>
    
</bean>
............


3.在实体类上配置缓存策略
如@org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.READ_WRITE)   

下面这几种情况就不适合加载到二级缓存中:
  1.经常被修改的数据
  2.绝对不允许出现并发访问的数据
  3.与其他应用共享的数据
  下面这己种情况合适加载到二级缓存中:
  1.数据更新频率低
  2.允许偶尔出现并发问题的非重要数据
  3.不会被并发访问的数据
  4.常量数据
  5.不会被第三方修改的数据

posted on 2008-10-23 09:55 Kevin.Zhong 阅读(2231) 评论(2)  编辑  收藏 所属分类: Jpa

评论

# re: JPA2级缓存的配置[未登录] 2008-11-16 14:17 jack
你好;我想请问一下,你配置得JPA得二级缓存你测试没有?我配置得JPA二级缓存和你一样;但是我在测试得时候查询一个集合,并没有生效?你是怎么处理得?请回答,谢谢  回复  更多评论
  

# re: JPA2级缓存的配置 2008-11-16 14:31 Kevin.Zhong
@jack
我已经在实际项目中使用了.
ps:你需要在实体类的集合属性前加入
@org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.READ_WRITE)   回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: