使用的语言是Java,使用的Redis客户端为Jedis
我调用redis的monitor命令捕获一条如下信息
1437562679.165098 [0 192.168.14.71:54692] "SET" "xe5x90x8cxe5xadxa6" "xacxedx00x05srx00x13com.redis.monitor.M2xc9x18ix8eZxafx03x02x00x00xp"
set后面有2串字符串。第一串字符串是key,记录的是一个中文的key名,是一个String(不要深究为什么用中文做Key)
第二串字符串是一个new出来的Object进行JDK的序列化之后的字节数组
现在有一个问题就是,我能否只根据这些字符串,还原他原来的面貌。
如果直接调redis的get命令,把拿到的byte数组反序列化后,肯定是可以弄成对象的,这个都知道。
我问的是能不能根据
`
"xacxedx00x05srx00x13com.redis.monitor.M2xc9x18ix8eZxafx03x02x00x00xp"
`
根据这些字符串还原对象。然后我自己再转成JSON或者转成XML,这样我就清晰的知道,当时做了一个什么操作,set了一个什么值
你是否可以直接把JSON等字符串作为value存进去,这样获取回来也直接知道这个JSON数据。你序列化对象是为了什么?
数据库一般还是存原始数据比较简单,存对象,好像不太必要。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。