Kevin.Zhong

          彪悍的人生不需要解釋,彪悍的代碼不需要測試。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            17 隨筆 :: 12 文章 :: 14 評論 :: 0 Trackbacks
          1.加入hibernate-memcached.jar及相關(guān)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.經(jīng)常被修改的數(shù)據(jù)
            2.絕對不允許出現(xiàn)并發(fā)訪問的數(shù)據(jù)
            3.與其他應(yīng)用共享的數(shù)據(jù)
            下面這己種情況合適加載到二級緩存中:
            1.數(shù)據(jù)更新頻率低
            2.允許偶爾出現(xiàn)并發(fā)問題的非重要數(shù)據(jù)
            3.不會被并發(fā)訪問的數(shù)據(jù)
            4.常量數(shù)據(jù)
            5.不會被第三方修改的數(shù)據(jù)

          posted on 2008-10-23 09:55 Kevin.Zhong 閱讀(2257) 評論(2)  編輯  收藏 所屬分類: Jpa

          評論

          # re: JPA2級緩存的配置[未登錄] 2008-11-16 14:17 jack
          你好;我想請問一下,你配置得JPA得二級緩存你測試沒有?我配置得JPA二級緩存和你一樣;但是我在測試得時候查詢一個集合,并沒有生效?你是怎么處理得?請回答,謝謝  回復(fù)  更多評論
            

          # re: JPA2級緩存的配置 2008-11-16 14:31 Kevin.Zhong
          @jack
          我已經(jīng)在實際項目中使用了.
          ps:你需要在實體類的集合屬性前加入
          @org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.READ_WRITE)   回復(fù)  更多評論
            


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 雅安市| 黑龙江省| 江孜县| 湖州市| 台南县| 皮山县| 宜城市| 邢台县| 通城县| 通道| 吴堡县| 新沂市| 清流县| 遵义县| 兴义市| 吉木乃县| 大港区| 罗甸县| 灌阳县| 易门县| 红安县| 新泰市| 新干县| 池州市| 景宁| 开平市| 达拉特旗| 中西区| 兴化市| 水富县| 图们市| 新和县| 托克托县| 岚皋县| 读书| 互助| 佳木斯市| 宜城市| 隆安县| 邻水| 定安县|