新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!
成都创新互联专业为企业提供京山网站建设、京山做网站、京山网站设计、京山网站制作等企业网站建设、网页设计与制作、京山企业网站模板建站服务,10余年京山做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。这篇文章主要为大家展示了Java如何用Redis存储复杂json格式数据并返回给前端,内容简而易懂,下面让小编带大家一起学习一下吧。
问题背景
在Java Web项目中,经常需要前端请求数据,后台从数据库中查询并计算最后返回json格式数据给前端。
而每次请求都需要计算一次可能比较浪费时间,这时我们可以将计算好的结果保存在redis中,下次请求时先判断redis中是否已经存在,如果是则直接从redis里取出返回,因为是在内存中,所以比较快。
而自己在项目中遇到的json格式数据比较复杂,下面记录一下redis存储对象和json格式数据的几种方式以及遇到的问题。
存储方式
1. 直接使用String存储
String类型是Redis中最简单的类型了,每个key对应一个String,我们可以直接将要存储的对象转换成json字符串,代码如下:
//存储 public static void setJsonString(String key, Object obj) { Jedis jedis = RedisConnection.getJedis(); jedis.set(key, JSON.toJSONString(obj)); jedis.close(); } //获取 public static String getJsonString(String key) { Jedis jedis = RedisConnection.getJedis(); String value = jedis.get(key); jedis.close(); return value; }