我在Java中有一个带有 Person 的列表,每个人都有一个id:
class Person{
public int id;
public String name;
}
现在我喜欢用JSON序列化这个列表:
{
"1":{
"name": "tom"
},{
"2":{
"name": "bob"
}
}
包含列表的类是否有任何anotation来指定JSON结构?
感谢。
答案 0 :(得分:2)
一种可能性是,如果您总是希望以这种方式序列化人员,您可以为类型添加自定义序列化程序,并注册它。有多种方法可以执行此操作:使用SimpleModule
进行注册,或者在@JsonSerialize(using=PersonSerializer.class)
类上使用Person
(此注释也可用于属性;如果两者都使用属性,则属性优先定义的)。
答案 1 :(得分:1)
要严格使用Person类完成上述操作,您需要
name
class PersonName{ String name; } Map<int, String> map = new HashMap<int, String>(); map.put(person.getId(), personName);