如何直接写入数据到redis
课程中只教了如何从mysql中读取数据后,缓存到redis。但是没有教如何直接写入前端传入的数据。
比如前端传入参数后,生成了一个购物车的实例对象,我想把这个购物车的对象,不写到mysql里,而直接写到redis,下次也直接从redis中取,这要怎么实现?springboot难道也用Jedis么?
43
收起
正在回答
1回答
同学你好,
redis一般不会这样被拿来直接使用哦,redis还是做缓存数据库,从数据库中取信息的,
理解同学说的这种情况, 是不是考虑类似于未登录情况下的京东购物车呢?
如果是,可以把数据存到cookies里哦。
如果是想了解如何直接往redis中存数据:

如果想存一个对象,可以使用存储Map的方式,但需要转换成<String,String>类型的map
例如,我要存一个User:

package com.imooc;
import java.util.HashMap;
import com.imooc.domain.User;
import redis.clients.jedis.Jedis;
public class RedisJava {
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
// 如果 Redis 服务设置来密码,需要下面这行,没有就不需要
// jedis.auth("123456");
System.out.println("连接成功");
//查看服务是否运行
System.out.println("服务正在运行: "+jedis.ping());
User user = new User(1,"zhangsan","1234");
//创建一个<String, String>类型的map
HashMap<String, String> hashMap = new HashMap<String, String>();
//存的时候,把user转换成字符类型的:
hashMap.put(String.valueOf(user.getUsername()), String.valueOf(user));
//使用hmset方法存入
jedis.hmset("user", hashMap);
// 获取存储的数据并输出
System.out.println("redis 存储的字符串为: "+ jedis.hgetAll("user"));
}
}但一般我们不会这样去使用redis的,多数还是从数据库中获取,缓存到redis中。
springboot也可以使用Jedis的。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
java工程师2020版
- 参与学习 人
- 提交作业 9410 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星