fastJson
和 jackson
类似, 使用 getter
方法来序列化成 json 串.
而 gson
是通过反射, 访问属性来序列化成 json 串. 不需要 getter/setter
三者的序列化都跟 setter
没有关系
jackson
的 XML
@Data
@JacksonXmlRootElement(localName = "xBody")
public class Body {
@JacksonXmlProperty(isAttribute = true)
private String version;
@JacksonXmlProperty(localName = "total")
@JsonInclude(JsonInclude.Include.NON_NULL)
private Integer total;
@JacksonXmlProperty(localName = "item")
@JsonProperty("item")
@JacksonXmlElementWrapper(localName = "list")
private List<Item> itemList;
@JacksonXmlProperty(localName = "order")
@JacksonXmlElementWrapper(useWrapping = false)
private List<Order> orders;
@Data
public static class Item {
@JacksonXmlProperty
private String name;
}
}