默认情况下是否有@JsonIgnore的方法,以及允许序列化的标记

Dim*_*iwa 3 java json jackson

在我的例子中,每次在java模型中添加新的方法时添加@JsonIgnore都不是很方便.

默认情况下,我会优先忽略所有内容,并在需要序列化时添加标记.

有没有一种简单的方法来实现它?

Enr*_*man 5

您必须使用像这样的"自定义"ObjectMapper:

ObjectMapper mapper = new ObjectMapper();
mapper.setVisibilityChecker(mapper.getDeserializationConfig().getDefaultVisibilityChecker()
        .withCreatorVisibility(JsonAutoDetect.Visibility.NONE)
        .withFieldVisibility(JsonAutoDetect.Visibility.NONE)
        .withGetterVisibility(JsonAutoDetect.Visibility.NONE)
        .withIsGetterVisibility(JsonAutoDetect.Visibility.NONE)
        .withSetterVisibility(JsonAutoDetect.Visibility.NONE));
Run Code Online (Sandbox Code Playgroud)

这将忽略未标记的所有内容 @JsonProperty