我有一些枚举类,让我们想象一下
public enum MyEnum {
ONE("one"), TWO("two"), THREE("three"), DEFAULT("some value")
//..
}
和 Dto 类:
@JsonPropertyOrder(value = {"id", "name", "params"})
public Dto {
private Long id;
private String name;
private Map<MyEnum, Object> params;
}
如何设置参数映射中键的顺序?我知道 LinkedHashMap 可用于设置顺序并以正确的顺序添加到地图中。但!在某些情况下,应该在运行时添加键值,并且应该将其添加到参数映射而不是最后一个链接,而是在映射内部。例如
params = new LinkedHashMap();
params.put(ONE, new String("object1"));
params.put(THREE, new String("object #3"));
而不是在我们刚刚添加的另一个代码位置
params.put(TWO, new Integer(20));
json里面的顺序应该是:
{
"id":"123", "name":"some name",
"params":{"ONE":"object1","TWO":"20","THREE":"object #3"}
}