博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
redis—Spring中redis缓存的简单使用
阅读量:5167 次
发布时间:2019-06-13

本文共 4724 字,大约阅读时间需要 15 分钟。

这里使用的是 Spring-4.3 , redis-2.8 的版本
 
1、添加maven依赖
redis.clients
jedis
2.8.0

 

2、编写自己的redisAPI

package com.del.tools; import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool; /** * 用于缓存的数据访问对象 * @author Domi  */public class RedisAPI {                //引入jedis连接池对象        public JedisPool jedisPool;         public JedisPool getJedisPool() {               return jedisPool;        }         public void setJedisPool(JedisPool jedisPool) {               this.jedisPool = jedisPool;        }        /**        * 缓存的设置        */        public boolean set(String key,String value){               Jedis jedis = null;                             try {                                             jedis = jedisPool.getResource();                                             jedis.set(key,value);                       return true;               } catch (Exception e) {                       // TODO: handle exceptionr                       e.printStackTrace();                                     }finally{                       returnResource(jedisPool, jedis);                                     }                             return false;        }                            /**         * 判断缓存中是否存在某个key值         */        public boolean exist(String key){               Jedis jedis =null;                try {                       jedis = jedisPool.getResource();                       return jedis.exists(key);               } catch (Exception e) {                       // TODO: handle exception               }finally{                       returnResource(jedisPool, jedis);                       System.out.println("关闭成功===》");                                     }               return false;        }               /**         * 获得缓存中的key         */               public String get(String key){               String value = null;               Jedis jedis =null;               try {                       jedis = jedisPool.getResource();                            value = jedis.get(key);               } catch (Exception e) {                       // TODO: handle exception               }finally{                       returnResource(jedisPool, jedis);                                     }                             return value;         }               /**         * 返还jedisPool          */        public static void returnResource(JedisPool jedisPool,Jedis jedis){               if (jedis!=null) {                       jedisPool.returnResource(jedis);               }                     }             }
 
3、用spring管理redis的bean组件

 
4、在业务中使用redisAPI
/*         *  根据userID查询购物车列表         *  使用redis缓存         */        @RequestMapping(value="/list")        public ModelAndView doBuyCarList(HttpSession session){                                           ModelAndView madnv = new ModelAndView();               User user = (User)session.getAttribute("hasLogin");               if(user!=null){                       //先判斷redis裡面有沒有值                                             List
buycarlist1 = null; buycarlist1 = buyCarService.findBuyCarList(user.getUserid()); String buycarlist = JSON.toJSONString(buycarlist1,true); redisAPI.set("carlist"+user.getUserid(), buycarlist); madnv.addObject("buycarlist", buycarlist1); System.out.println("buycarlist====="+buycarlist1); System.out.println("FROM DB==>"); }else{ String buycarlist = redisAPI.get("carlist"+user.getUserid()); if (buycarlist!=null && !"".equals(buycarlist)) { buycarlist1 =JSON.parseArray(buycarlist, BuyCar.class); madnv.addObject("buycarlist", buycarlist1); System.out.println("buycarlist====="+buycarlist); System.out.println("FROM REDIS==>"); }else{ System.out.println("error==>"); } } } madnv.setViewName("buycar/shopping.jsp"); return madnv; }

 

转载于:https://www.cnblogs.com/domi22/p/8059681.html

你可能感兴趣的文章
Eclipse UML插件
查看>>
易语言数据库的基本操作
查看>>
打包iOS应用程序
查看>>
EasyUI - DataGrid 去右边空白滚动条列
查看>>
安卓数据库操作
查看>>
MySql中的变量定义
查看>>
spoj2798 QTREE3 Query on a tree again!
查看>>
Python acos() 函数
查看>>
top coder password题解
查看>>
Myeclipse 安装所有插件
查看>>
4-1
查看>>
POJ - 2796 Feel Good 单调递增栈+前缀和
查看>>
redis面试题
查看>>
三、activiti designer 的安装
查看>>
Python自省
查看>>
How to Choose the Best Way to Pass Multiple Models in ASP.NET MVC
查看>>
【算法】求二叉树各路径结点之和并找出最大值的路径
查看>>
c 字符串 函数
查看>>
12.5 站立会议
查看>>
SQLServer数据库的一些全局变量
查看>>