redis添加缓存
来源:互联网 发布:js自动中跳转页面 编辑:程序博客网 时间:2024/05/17 21:58
@Autowiredprivate JedisClient jedisClient;/** * 根据内容分类id查询内容列表 cn.e3mall.content.service.ContentService#getContentListByCid(long) */public List<TbContent> getContentListByCid(long cid) { //查询缓存 try { //如果缓存中有直接响应结果 String json = jedisClient.hget("CONTENT_LIST", cid + ""); if (StringUtils.isNotBlank(json)) { List<TbContent> list = JsonUtils.jsonToList(json, TbContent.class); return list; } } catch (Exception e) { e.printStackTrace(); } //如果没有查询数据库 TbContentExample example = new TbContentExample(); Criteria criteria = example.createCriteria(); //设置查询条件 criteria.andCategoryIdEqualTo(cid); //执行查询 List<TbContent> list = contentMapper.selectByExampleWithBLOBs(example); //把结果添加到缓存 try { jedisClient.hset("CONTENT_LIST", cid + "", JsonUtils.objectToJson(list)); } catch (Exception e) { e.printStackTrace(); } return list; }}缓存同步当做增删改时需要更新缓存@Overridepublic E3Result addContent(TbContent content) { //插入到数据库 contentMapper.insert(content); //当增删改操作时缓存同步,删除缓存中对应的数据,下次查询时从数据库中查 jedisClient.hdel(CONTENT_LIST, content.getCategoryId().toString()); return E3Result.ok();}
public TbItem getItemById(long itemId) { //查询缓存 try { String json = jedisClient.get("REDIS_ITEM_PRE" + ":" + itemId + ":BASE"); if(StringUtils.isNotBlank(json)) { TbItem tbItem = JsonUtils.jsonToPojo(json, TbItem.class); return tbItem; } } catch (Exception e) { e.printStackTrace(); } //缓存中没有,查询数据库 TbItemExample example = new TbItemExample(); Criteria criteria = example.createCriteria(); //设置查询条件 criteria.andIdEqualTo(itemId); //执行查询 List<TbItem> list = itemMapper.selectByExample(example); if (list != null && list.size() > 0) { //把结果添加到缓存 try { jedisClient.set("REDIS_ITEM_PRE" + ":" + itemId + ":BASE", JsonUtils.objectToJson(list.get(0))); //设置过期时间 jedisClient.expire("REDIS_ITEM_PRE" + ":" + itemId + ":BASE",3600); } catch (Exception e) { e.printStackTrace(); } return list.get(0); } return null;}
阅读全文
0 0
- redis添加缓存
- CI中添加redis缓存
- 【Redis】redis实战:在业务中添加缓存机制
- shopnc开启缓存, 配置 redis,windows redis 安装,wampserver php 添加 redis 扩展
- 如何在web项目中添加redis缓存
- Spring项目中添加Redis服务与缓存同步问题
- 使用redis对商城的首页添加缓存
- Spring项目中添加Redis服务与缓存同步问题
- springmvc+redis缓存问题(添加@Cacheable无效问题)
- 带有redis缓存,添加购物车代码解析
- Redis缓存
- redis缓存
- Redis缓存
- Redis缓存
- redis缓存
- Redis缓存
- redis 缓存
- 缓存-redis
- 【转】https单双向认证
- C++:函数求数根(总算写出来了。。。。)
- squirrel sql工具与hive的连接
- luogu1092[虫食算] 搜索
- noip数论复习总结
- redis添加缓存
- 洛谷 P1311 选择客栈
- 算法练习3
- 搭载samba服务器
- 263. Ugly Number
- Linux的一些基本操作命令
- LQB-4
- Spring解决方法
- 第三章:变量、常量与数据类型