我使用Gson将类转换为Json。我不想在我转换的Java对象中映射枚举类。哪个是要排除它的注释?
在课程和个人成员上尝试了@Exclude
。
答案 0 :(得分:0)
根据doc,检查@Expose
注释。您可以使用此批注来保留要序列化的字段。
例如,一个人实体,我不想将id序列化为json。
public class Person {
private long id;
@Expose
private String name;
@Expose
private String intro;
public Person(long id, String name, String intro) {
this.id = id;
this.name = name;
this.intro = intro;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getIntro() {
return intro;
}
public void setIntro(String intro) {
this.intro = intro;
}
}
然后我可以使用此代码
创建gson
public void serializeWithExpose() {
Gson g = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
Person person = new Person(1L, "Name", "into");
String s = g.toJson(person);
System.out.println(s);
}