欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在ssm項目中使用redis緩存查詢數(shù)據(jù)的方法

 更新時間:2018年03月22日 10:11:57   作者:caychen  
本文主要簡單的使用Java代碼進行redis緩存,即在查詢的時候先在service層從redis緩存中獲取數(shù)據(jù)。如果大家對在ssm項目中使用redis緩存查詢數(shù)據(jù)的相關知識感興趣的朋友跟隨腳本之家小編一起看看吧

在項目中常常需要后臺程序的持久層查詢數(shù)據(jù)庫來獲取數(shù)據(jù),然后將數(shù)據(jù)交給服務層、控制層,最后才交給視圖層。如果數(shù)據(jù)訪問緩慢,就會影響程序的運行。

為了加快程序的運行,可以將數(shù)據(jù)放入緩存中,包括數(shù)據(jù)緩存和頁面緩存。

所謂緩存,就是將程序或系統(tǒng)經(jīng)常要調(diào)用的對象存在內(nèi)存中,一遍其使用時可以快速調(diào)用,不必再去創(chuàng)建新的重復的實例。這樣做可以減少系統(tǒng)開銷,提高系統(tǒng)效率。

其中頁面緩存主要是oscache,可以整頁或者指定網(wǎng)頁某一部分緩存,同時指定他的過期時間,這樣在此時間段里面訪問的數(shù)據(jù)都是一樣的 。

數(shù)據(jù)緩存則比較多,有著名的ehcache,redis,memcached等。

本文主要簡單的使用Java代碼進行redis緩存,即在查詢的時候先在service層從redis緩存中獲取數(shù)據(jù)。如果不存在,則再經(jīng)過dao層從數(shù)據(jù)庫中獲取,最后將查詢到的數(shù)據(jù)緩存到redis中;如果存在,直接從redis緩存中讀取,并交給controller層。

xml配置:

<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"> 
 <property name="maxTotal" value="${redis.maxTotal}"></property> 
 <property name="maxIdle" value="${redis.maxIdle}"></property> 
 <property name="testOnBorrow" value="${redis.testOnBorrow}"></property> 
 <property name="maxWaitMillis" value="${redis.maxWaitMillis}"></property> 
</bean> 
<!-- jedis客戶端單機版 --> 
<bean id="jedisPool" class="redis.clients.jedis.JedisPool"> 
 <constructor-arg name="poolConfig" ref="poolConfig"></constructor-arg> 
 <constructor-arg name="host" value="${redis.hostName}"></constructor-arg> 
 <constructor-arg name="port" value="${redis.port}"></constructor-arg> 
</bean> 
<!-- jedis集群版配置 --> 
<bean id="jedisCluster" class="redis.clients.jedis.JedisCluster"> 
 <constructor-arg name="poolConfig" ref="poolConfig"></constructor-arg> 
 <constructor-arg name="nodes"> 
 <set> 
  <bean class="redis.clients.jedis.HostAndPort"> 
  <constructor-arg name="host" value="127.0.0.1"></constructor-arg> 
  <constructor-arg name="port" value="7001"></constructor-arg> 
  </bean> 
  <bean class="redis.clients.jedis.HostAndPort"> 
  <constructor-arg name="host" value="127.0.0.1"></constructor-arg> 
  <constructor-arg name="port" value="7002"></constructor-arg> 
  </bean> 
  <bean class="redis.clients.jedis.HostAndPort"> 
  <constructor-arg name="host" value="127.0.0.1"></constructor-arg> 
  <constructor-arg name="port" value="7003"></constructor-arg> 
  </bean> 
  <bean class="redis.clients.jedis.HostAndPort"> 
  <constructor-arg name="host" value="127.0.0.1"></constructor-arg> 
  <constructor-arg name="port" value="7004"></constructor-arg> 
  </bean> 
  <bean class="redis.clients.jedis.HostAndPort"> 
  <constructor-arg name="host" value="127.0.0.1"></constructor-arg> 
  <constructor-arg name="port" value="7005"></constructor-arg> 
  </bean> 
 </set> 
 </constructor-arg> 
</bean> 
[java] view plain copy
java調(diào)用 
//service層查詢時代碼 
@Autowired 
private JedisClient jedisClient; 
@Override 
public List<User> list() { 
 // TODO Auto-generated method stub 
 try { 
 String json = jedisClient.hget("user", "list"); 
 if (StringUtils.isNotBlank(json)) { 
  List<User> users = JsonUtils.jsonToList(json, User.class); 
  return users; 
 } 
 } catch (Exception e) { 
 e.printStackTrace(); 
 } 
 //使用持久層查詢數(shù)據(jù)庫 
 List<User> list = userMapper.list(); 
 try { 
 jedisClient.hset("user", "list", JsonUtils.objectToJson(list)); 
 } catch (Exception e) { 
 e.printStackTrace(); 
 } 
 return list; 
} 

總結(jié)

以上所述是小編給大家介紹的在ssm項目中使用redis緩存查詢數(shù)據(jù),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • Redis字符串原理的深入理解

    Redis字符串原理的深入理解

    這篇文章主要給大家介紹了關于Redis字符串原理的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Redis具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-06-06
  • RedisTemplate中boundHashOps的使用小結(jié)

    RedisTemplate中boundHashOps的使用小結(jié)

    redisTemplate.boundHashOps(key)?是 RedisTemplate 類的一個方法,本文主要介紹了RedisTemplate中boundHashOps的使用小結(jié),具有一定的參考價值,感興趣的可以了解一下
    2024-04-04
  • Redis如何使用lua腳本實例教程

    Redis如何使用lua腳本實例教程

    這篇文章主要給大家介紹了關于Redis如何使用lua腳本的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-10-10
  • Redis底層類型之json命令使用

    Redis底層類型之json命令使用

    這篇文章主要為大家介紹了Redis底層類型之json命令使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • redis如何設置database個數(shù)

    redis如何設置database個數(shù)

    這篇文章主要介紹了redis如何設置database個數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 通過實例解析布隆過濾器工作原理及實例

    通過實例解析布隆過濾器工作原理及實例

    這篇文章主要介紹了通過實例解析布隆過濾器工作原理及實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Redis基本數(shù)據(jù)類型Set常用操作命令

    Redis基本數(shù)據(jù)類型Set常用操作命令

    這篇文章主要為大家介紹了Redis基本數(shù)據(jù)類型Set常用操作命令,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Redis存取序列化與反序列化性能問題詳解

    Redis存取序列化與反序列化性能問題詳解

    這篇文章主要給大家介紹了關于Redis存取序列化與反序列化性能問題的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • 詳解利用redis + lua解決搶紅包高并發(fā)的問題

    詳解利用redis + lua解決搶紅包高并發(fā)的問題

    本篇文章主要介紹了利用redis + lua解決搶紅包高并發(fā)的問題 ,詳細的講訴了需求分析和方案,有興趣的可以了解一下。
    2016-11-11
  • 生產(chǎn)redisson延時隊列不消費問題排查解決

    生產(chǎn)redisson延時隊列不消費問題排查解決

    這篇文章主要為大家介紹了生產(chǎn)redisson延時隊列不消費問題排查解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09

最新評論