如何将Java对象属性排除为JSON字符串的一部分?

时间:2015-11-24 12:14:39

标签: java json

我有一个Java POJO。很少有属性和列表<>。在将此对象转换为JSON String时,我想要排除list属性, 那么用什么注释?

public class StudentResultSummary {
    private String totMarks;
    private String avgMarks;
    private List<StudentResult> resultList = new ArrayList<StudentResult>();
}

转换为JSON:

StudentResultSummary resultSummary = new StudentResultSummary();
Json json = new Json();
policySummary = json.encode(resultSummary);

如何确保字段resultList不包含在JSON响应中?

2 个答案:

答案 0 :(得分:4)

来自Chris Seline's answer

  

您不希望序列化的任何字段都应该使用   “瞬态”修饰符,这也适用于json序列化器(at   至少它对我使用的一些,包括gson)。

     

如果你不希望名字显示在序列化的json中给它一个   临时关键字,例如:

private transient String name;

答案 1 :(得分:2)

如果您不想在响应json中使用该列,则可以使用@JsonIgnore 如果您不想在表中使用该字段,则应使用@Transient

 @Transient
    private String password_key_type; 

    @JsonIgnore
    public int getUser_id()
    {
    return user_id;
    }