我有一个POJO,如下所示,它具有map作为属性之一
@RedisHash(“测试”) 公共类DataElasticCache {
@Id
private String id;
private long sourceTime;
private long sequenceNumber
@Indexed private double cycleID;
private map<String, Object> values
}
我正在尝试将其存储在Elastic缓存中-使用存储库进行Redis,并使用@RedisHash spring数据redis和生菜库对其进行哈希处理。
我需要在几个字段上建立索引,所以才使用它。在Redis中创建哈希时,它正在为每个字段创建键值对,包括以下map属性的各个键
1) "_class"
2) "elasticcache.model.DataElasticCache"
3) "id"
4) "64:d6:6"
5) "businessDate"
6) "1546993380000"
7) "sourceTime"
8) "1582643572252"
9) "sequenceNumber"
10) "646"
11) "deliveryClass"
12) "d6"
13) "cycleID"
14) "64.0"
15) "instrumentID"
16) "6"
17) "values.[random0]._class"
18) "java.lang.Double"
19) "values.[random0]"
20) "0.857969597582983"
21) "values.[random38]._class"
22) "java.lang.Double"
23) "values.[random38]"
24) "-1.0819228523608013"
25) "values.[random39]._class"
26) "java.lang.Double"
27) "values.[random39]"
28) "-0.9189258905684135"
我想为其他属性设置单独的键值,但对于map来说,它应该只是redis中的一个键。有什么办法可以做到的?
1) "_class"
2) "elasticcache.model.DataElasticCache"
3) "id"
4) "64:d6:6"
5) "businessDate"
6) "1546993380000"
7) "sourceTime"
8) "1582643572252"
9) "sequenceNumber"
10) "646"
11) "deliveryClass"
12) "d6"
13) "cycleID"
14) "64.0"
15) "instrumentID"
16) "6"
17) "values.[random0]._class"
18) "java.lang.Double"
19) "values.[random0]"
20) "entire map"
它是否在内存消耗方面有所不同。
预先感谢