使用的语言是Java,使用的Redis客户端为Jedis
我调用redis的monitor命令捕获一条如下信息
1437562679.165098 [0 192.168.14.71:54692] "SET" "\xe5\x90\x8c\xe5\xad\xa6" "\xac\xed\x00\x05sr\x00\x13com.redis.monitor.M2\xc9\x18i\x8eZ\xaf\x03\x02\x00\x00xp"
set后面有2串字符串。第一串字符串是key,记录的是一个中文的key名,是一个String(不要深究为什么用中文做Key)
第二串字符串是一个new出来的Object进行JDK的序列化之后的字节数组
现在有一个问题就是,我能否只根据这些字符串,还原他原来的面貌。
如果直接调redis的get命令,把拿到的byte数组反序列化后,肯定是可以弄成对象的,这个都知道。
我问的是能不能根据【"\xac\xed\x00\x05sr\x00\x13com.redis.monitor.M2\xc9\x18i\x8eZ\xaf\x03\x02\x00\x00xp"】。
根据这些字符串还原对象。然后我自己再转成JSON或者转成XML,这样我就清晰的知道,当时做了一个什么操作,set了一个什么值