004.哈希映射

可以使用Redis哈希实现更复杂的结构化对象映射,Spring Data Redis提供了将数据映射到哈希的各种决策:

  1. 直接映射,使用HashOperations和序列化程序
  2. 使用Redis存储库(我暂时不想考虑这个层面的应用,因为这个技术目前应用的可能比较少)
  3. 使用HashMapper和HashOperations

Hash Mappers

Hash Mappers需要和Redis的哈希类型一起使用,其有多种实现:

  1. BeanUtilsHashMapper使用Spring的BeanUtils。
  2. ObjectHashMapper使用对象到哈希映射。
  3. Jackson2HashMapper使用FasterXML Jackson。

Jackson2HashMapper

Jackson2HashMapper可以将顶级属性映射为Hash字段名称,并且可以选择展平结构。简单类型映射到简单值,复杂类型(嵌套对象、集合、映射等)表示为嵌套JSON。

扁平化为所有嵌套属性创建单独的哈希条目,并且尽可能的解析为简单类型。

嵌套:

2022-01-21-15-49-41

展平:

2022-01-21-15-49-51