天天看點

spring + redis 實作資料的緩存

1、實作目标

  通過redis緩存資料。(目的不是加快查詢的速度,而是減少資料庫的負擔)  

2、所需jar包

  

spring + redis 實作資料的緩存

  注意:jdies和commons-pool兩個jar的版本是有對應關系的,注意引入jar包是要配對使用,否則将會報錯。因為commons-pooljar的目錄根據版本的變化,目錄結構會變。前面的版本是org.apache.pool,而後面的版本是org.apache.pool2...

style=" color: white; font-size: 17px; font-weight: bold;"3、redis簡介

  redis是一個key-value存儲系統。和Memcached類似,它支援存儲的value類型相對更多,包括string(字元串)、list(連結清單)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些資料類型都支援push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支援各種不同方式的排序。與memcached一樣,為了保證效率,資料都是緩存在記憶體中。差別的是redis會周期性的把更新的資料寫入磁盤或者把修改操作寫入追加的記錄檔案,并且在此基礎上實作了master-slave(主從)

4、編碼實作

1)、配置的檔案(properties)

  将那些經常要變化的參數配置成獨立的propertis,友善以後的修改

  redis.properties

spring + redis 實作資料的緩存
spring + redis 實作資料的緩存

2)、spring-redis.xml

  redis的相關參數配置設定。參數的值來自上面的properties檔案

spring + redis 實作資料的緩存
spring + redis 實作資料的緩存

3)、applicationContext.xml

  spring的總配置檔案,在裡面假如一下的代碼

spring + redis 實作資料的緩存
spring + redis 實作資料的緩存

4)、web。xml

  設定spring的總配置檔案在項目啟動時加載

5)、redis緩存工具類

ValueOperations  ——基本資料類型和實體類的緩存

ListOperations   ——list的緩存

SetOperations   ——set的緩存

HashOperations  Map的緩存

spring + redis 實作資料的緩存
spring + redis 實作資料的緩存

6)、測試

  這裡測試我是在項目啟動的時候到資料庫中查找出國家和城市的資料,進行緩存,之後将資料去出

6.1 項目啟動時緩存資料

spring + redis 實作資料的緩存
spring + redis 實作資料的緩存

6.2 擷取緩存資料

spring + redis 實作資料的緩存
spring + redis 實作資料的緩存

  由于Spring在配置檔案中配置的bean預設是單例的,是以隻需要通過Autowired注入,即可得到原先的緩存類。

http://www.cnblogs.com/0201zcr/p/4987561.html