添加redis缓存的方法
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这期内容当中小编将会给大家带来有关添加redis缓存的方法,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。redis常本用来作为缓存服务器。缓存的好处是减少服务器的压
千家信息网最后更新 2026年11月03日添加redis缓存的方法
这期内容当中小编将会给大家带来有关添加redis缓存的方法,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
redis常本用来作为缓存服务器。缓存的好处是减少服务器的压力,数据查询速度快。解决数据响应慢的问题。
添加缓存:只用redis的Hash数据类型添加缓存。
例如:需要在查询的业务功能中,添加缓存
1.首先需要在执行正常的业务逻辑之前(查询数据库之前),查询缓存,如果缓存中没有需要的数据,查询数据库
为了防止添加缓存出错,影响正常业务代码的执行,将添加缓存的代码放置到try-catch代码快中,让程序自动捕获。
2.完成数据库的查询操作,查询完成之后需要将查询的数据添加到缓存中。
代码:
@Override public ListfindContentByCategoryId(Long categoryId) { // 查询出的内容列表可以添加到缓存中,便于展示,为了保证添加缓存出现错误不影响程序的正常业务功能,可以使用try catch的方式加缓存 try { String json = jedisClient.hget(CONTENT_LIST, categoryId + ""); if (json != null) { List list = JsonUtils.jsonToList(json, TbContent.class); return list; } } catch (Exception e) { e.printStackTrace(); } TbContentExample example = new TbContentExample(); Criteria criteria = example.createCriteria(); criteria.andCategoryIdEqualTo(categoryId); // 使用selectByExampleWithBLOBs方法会将content属性框中的内容也查询出来 List list = contentMapper.selectByExampleWithBLOBs(example); // 操作完成后需要将查询的内容添加到缓存中,因为添加缓存的过程可能出错,所以使用try catch将异常抛出即可 // categoryId+""将Long类型的数据转换成String类型的 try { jedisClient.hset(CONTENT_LIST, categoryId + "", JsonUtils.objectToJson(list)); } catch (Exception e) { e.printStackTrace(); } return list; }
Json转换的工具类:
package nyist.e3.utils;import java.util.List;import com.fasterxml.jackson.core.JsonProcessingException;import com.fasterxml.jackson.databind.JavaType;import com.fasterxml.jackson.databind.ObjectMapper;/** * 淘淘商城自定义响应结构 */public class JsonUtils { // 定义jackson对象 private static final ObjectMapper MAPPER = new ObjectMapper(); /** * 将对象转换成json字符串。 * Title: pojoToJson
* Description:
* @param data * @return */ public static String objectToJson(Object data) { try { String string = MAPPER.writeValueAsString(data); return string; } catch (JsonProcessingException e) { e.printStackTrace(); } return null; } /** * 将json结果集转化为对象 * * @param jsonData json数据 * @param clazz 对象中的object类型 * @return */ public static T jsonToPojo(String jsonData, Class beanType) { try { T t = MAPPER.readValue(jsonData, beanType); return t; } catch (Exception e) { e.printStackTrace(); } return null; } /** * 将json数据转换成pojo对象list * Title: jsonToList
* Description:
* @param jsonData * @param beanType * @return */ public static List jsonToList(String jsonData, Class beanType) { JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType); try { List list = MAPPER.readValue(jsonData, javaType); return list; } catch (Exception e) { e.printStackTrace(); } return null; } } 上述就是小编为大家分享的添加redis缓存的方法了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
缓存
数据
查询
内容
对象
业务
代码
类型
方法
数据库
功能
服务器
程序
分析
影响
服务
专业
中小
内容丰富
压力
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网佳科技有限公司
善班互联网科技
齐家互联网科技
贷财互联网科技
远拓互联网科技
安控科技rtu产品工业互联网
江苏南京365互联网科技
济南华为互联网科技产业总部基地
互联网企业和科技型企业
互联网科技教育视频
互联网金融科技展
允成互联网科技有限公司融资
内蒙古九一互联网科技
元气玛特互联网科技公司是外包吗
锡山区互联网智能科技产品供应
21世纪互联网科技成就
北京天晋互联网科技有限公司
广州三三互联网科技有限公司
深圳互联网科技园地址
黑龙江互联网科技公司
科技互联网龙头
中国互联网科技股
互联网电商科技
互联网科技英文翻译
科技互联网大厂
乌鲁木齐新华智原互联网科技学校
工业互联网山东科技大学
卡尔迅互联网科技有限公司
亚光科技低轨卫星互联网
互联网科技创新方面的资料