2017-09-14 58 views
-1

領域我有一個Java類如何使用傑克遜有條件連載一個POJO

public class CategoryItem implements Serializable { 
    private Long id;    

    private String name;   

    private Manager manager; 
} 

在一種情況下,我需要所有的字段轉換成JSON。 另一方面,我只需要'id'和'name' 我該怎麼辦?

給我一些tips.Thanks

+0

你有什麼研究嗎? – soorapadman

+0

設置不需要的字段null – passion

+0

[忽略使用Jackson的JSON對象上的新字段]可能的副本(https://stackoverflow.com/questions/5455014/ignoring-new-fields-on-json-objects-using-jackson) –

回答

0

與@JsonIgnore

標註您的POJO id與@JsonProperty name屬性和經理當你只想idname,使用默認ObjectMapper。 當您需要所有字段時,請根據此question/answer使用自定義ObjectMapper。

0

有很多方法可以做到這一點:

  1. 設置不必要的字段null,並使用在一流水平@JsonInclude(Include.NON_NULL)註解。

  2. supply SimpleBeanPropertyFilter,while ObjectMapper and use annotation @JsonFilter(<filter_name>) at class level。

  3. 使用自定義序列化程序。