java - 使用Jackson(JSON)将Redis key 反序列化为字段值

标签 java json jackson

我有一个以下班级用户:

// userId is Redis key
@JsonIgnoreProperties("userId")
class User {
    private int userId;
    private String firstName;
    private String lastName;

    //setter, getter..
}


userId用作Redis记录键(格式为user:[userId])。为了节省空间,我不想将其另外存储在JSON字段中,这就是为什么要使用@JsonIgnoreProperties("userId")的原因。

这是Redis中的一个用户实例示例:

127.0.0.1:6379> get "user:1234"
"{\"firstName\":\"John\",\"lastName\":\"Smith\"}"


如何最好使用Jackson2JsonRedisSerializer反序列化此类JSON对象?在反序列化示例之后,上面的userId值将设置为1234。

最佳答案

我不认为您可以直接对包含用户ID的序列进行反序列化,您可能希望首先使用指定对象中的记录键来获取记录,然后将用户ID设置为该序列。

关于java - 使用Jackson(JSON)将Redis key 反序列化为字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34926493/

相关文章:

JSON:序列化 Guava optional

java - 在 Java 中,super.getClass() 打印 "Child"而不是 "Parent"- 为什么会这样?

java - 如何在java中使用spring解压上传的zip文件

java - 在 Jar 文件中设置图标图像

java - 如何使用 Jackson 注释序列化此 JSON?

json - JacksonPolymorphicDeserialization : JsonMappingException

java - 如果未输入,则从 URL 获取协议(protocol)

jquery - 使用选择框将 HTML 表格转换为 JSON

jquery - 使用 JSON

java - 使用 jackson 响应中的指定键反序列化为类