posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          spring中配置二級緩存

          Posted on 2007-08-16 14:12 semovy 閱讀(3651) 評論(4)  編輯  收藏 所屬分類: Hibernatespring

          1.首先,在spring的hibernate配置里(我的是applicationContext-hibernate.xml) 加上如下屬性:

          <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">         
            <property name="dataSource">
             <ref bean="dataSource"/>
            </property>
            <property name="mappingResources">
             <list>
              <value>org/appfteaching/model/TArticleclass.hbm.xml</value>
             </list>
            </property>
            <property name="hibernateProperties">
             <props>
              <prop key="hibernate.dialect">${hibernate.dialect}</prop>
                    <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
                    <prop key="hibernate.jdbc.fetch_size">${hibernate.jdbc.fetch_size}</prop>
                    <prop key="hibernate.jdbc.batch_size">${hibernate.jdbc.batch_size}</prop>
                    <prop key="hibernate.cache.use_query_cache">true</prop>
                    <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
             </props>   
            </property>  
           </bean> 

          2.其次,在src目錄下的ehcache.xml中配置如下信息(如果是默認ehcache.xml則會有<cache name="sampleCache1">和<cache name="sampleCache2>",去掉)

          <cache name="org.hibernate.cache.StandardQueryCache"
                  maxElementsInMemory="10000"
                  eternal="false"
                  timeToIdleSeconds="300"
                  timeToLiveSeconds="4200"
                  overflowToDisk="true"
                  />

              <!-- Sample cache named sampleCache2
                  This cache contains 1000 elements. Elements will always be held in memory.
                  They are not expired. -->

              <cache name="org.hibernate.cache.UpdateTimestampsCache"
                  maxElementsInMemory="5000"
                  eternal="true"
                  timeToIdleSeconds="0"
                  timeToLiveSeconds="0"
                  overflowToDisk="false"
                  />

          3.將你要緩存的model加進ehcache.xml里

          <cache name="org.appfteaching.model.TArticleclass"
               maxElementsInMemory="1000"
                  eternal="false"
                  timeToIdleSeconds="100"
                  timeToLiveSeconds="4200"
                  overflowToDisk="true"
               />  

          4.最后一步,在TArticleclass.hbm.xml里加上

          <cache usage="read-write"/>

          啟動Tomcat,如發現如下錯誤

          Could not find configuration [org.hibernate.cache.UpdateTimestampsCache]; using defaults.
          Could not find configuration [org.hibernate.cache.StandardQueryCache]; using defaults.

          則是第二步沒有做,加上即可.配置完畢


          評論

          # re: spring中配置二級緩存   回復  更多評論   

          2008-11-04 17:02 by sss
          很好很好,學習了,有效

          # re: spring中配置二級緩存   回復  更多評論   

          2010-07-15 00:19 by 游客
          很好 博主很強大

          # re: spring中配置二級緩存   回復  更多評論   

          2011-12-18 20:33 by 游客
          好文章啊.
          主站蜘蛛池模板: 吉水县| 枣庄市| 谢通门县| 花垣县| 乌恰县| 苏尼特右旗| 通道| 台中市| 横山县| 福贡县| 汕头市| 天等县| 黄山市| 外汇| 边坝县| 衡阳县| 尖扎县| 铜梁县| 开化县| 延庆县| 衢州市| 巍山| 如东县| 东阿县| 叶城县| 任丘市| 寻乌县| 郑州市| 永川市| 姚安县| 彭山县| 崇信县| 延川县| 新竹县| 平顺县| 同仁县| 萨嘎县| 鄄城县| 甘南县| 财经| 易门县|