最近去面试,碰到面试官提问,如果要把一个自定义的java对象存储到redis中,除了一般使用json和序列化之外,还有一种,可以配置redis的配置文件,操作hash类型,直接使用HGETALL (或者其他操作hash的命令),取出来就会是一个java对象??
可以,其实对象无非就是一堆的键值对嘛,可以直接用redis里面的map结构来存储,每个属性都是一个key.
代码就类似下面这样.
Map<String, String> data = new HashMap<String , String();
jedis.hmset("product:1", data);
取出来的话就这样:
Map<String, String> data = jedis.hgetAll(key);
再把这个map转换成对象.
他说取出来直接就是java对象那是扯犊子
本文探讨了将自定义Java对象存入Redis的方法,除了JSON序列化外,还介绍了利用Redis的Hash类型直接存储对象属性的方式,并给出了具体实现代码。
2255

被折叠的 条评论
为什么被折叠?



