麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數(shù)據庫 > Redis > 正文

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

2020-03-17 12:34:48
字體:
來源:轉載
供稿:網友

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

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

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

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

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

本文主要簡單的使用Java代碼進行redis緩存,即在查詢的時候先在service層從redis緩存中獲取數(shù)據。如果不存在,則再經過dao層從數(shù)據庫中獲取,最后將查詢到的數(shù)據緩存到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 copyjava調用 //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ù)據庫  List<User> list = userMapper.list();  try {  jedisClient.hset("user", "list", JsonUtils.objectToJson(list));  } catch (Exception e) {  e.printStackTrace();  }  return list; } 

總結

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


注:相關教程知識閱讀請移步到Redis頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产品久久 | 国产午夜亚洲精品理论片大丰影院 | 午夜丰满少妇高清毛片1000部 | 久久久成人免费视频 | 欧美激情综合在线 | 成人免费福利视频 | 午夜视频大全 | 久久成人免费网 | 中文字幕在线观看亚洲 | 久久久精品视频网站 | 999久久国产 | 55夜色66夜色国产精品视频 | 国产精品视频成人 | 一区二区三区在线观看视频 | 黄视频免费在线观看 | 国产成人高清在线 | 久草视频福利在线观看 | 久久精品视频69 | 色视频在线观看 | av在线免费观看网站 | 成年性羞羞视频免费观看 | 久久艳片 | 久久超碰99 | 欧美电影在线观看 | 羞羞答答影院 | 青青国产在线视频 | www.48xx.com| 日本一道aⅴ不卡免费播放 久久久久久久高清 | 中午字幕无线码一区2020 | 成人免费一区二区三区 | 免费看污视频在线观看 | 久久精品视频黄色 | 日日噜噜噜夜夜狠狠久久蜜桃 | 日日狠狠久久偷偷四色综合免费 | 毛片在线免费 | 高清国产在线 | 精品国产高清一区二区三区 | 免费毛片儿 | 中文字幕一区久久 | 羞羞视频入口 | 成年人在线免费播放视频 |