序列化注解

@JsonAnyGetter

用于指定一个方法,将对象中的所有属性序列化为一个 Map 对象。

@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    private String username;
    private Integer age;
    private Map<String, String> properties = new HashMap<>();

    @JsonAnyGetter
    public Map<String, String> getProperties() {
        return properties;
    }

    public void add(String key, String value) {
        properties.put(key, value);
    }
}

@JsonGetter

用于指定一个方法,将对象中的属性序列化为指定的属性名。

@JsonPropertyOrder

用于指定序列化时属性的顺序。

@JsonRawValue

用于指定一个属性,将属性值按照原始的 JSON 字符串序列化。

@JsonValue

用于属性或方法,指定序列化时的值,此时,只会序列化该值。一个类中只能有一个方法使用 @JsonValue 注解。

@JsonRootName

用于指定序列化时的根节点名称。

@JsonSerialize

用于指定自定义的序列化器。

最后更新于