最近写项⽬,⽤到Jackson的⼀些注解,总结⼀下,帮助⾃⼰记忆。1.@JsonIgnore 和 @JsonIgnoreProperties两个注解可以对照⽐较后选择使⽤:@JsonIgnore
在json序列化时将java bean中的⼀些属性忽略掉,序列化和反序列化都受影响。private String name;private Integer age;@JsonIgnore
private String color;运⾏⽅法在控制台打印
System.out.println(name+\"\"+age+\"\"+color+\"\");
将只显⽰name和age,color受注解的影响不进⾏显⽰。
使⽤⽅法:⼀般标记在属性或者⽅法上,返回的json数据即不包含该属性。@JsonIgnoreProperties
和 @JsonIgnore 的作⽤相同,都是告诉 Jackson 该忽略哪些属性,
不同之处是 @JsonIgnoreProperties 是类级别的,并且可以同时指定多个属性。
@JsonIgnoreProperties(value = {\"age\public class TestJackson{ private String id;
private String username; private String password; private Integer age; private String color; }
类中的age和color属性都将会在序列化和反序列化时被忽略掉。
2.@JsonProperty
它⽤于属性上,作⽤是把属性的名称序列化成另外⼀个名称@JsonProperty(\"name\")private String username;
把username属性序列化为name
3.@JsonInclude(JsonInclude.Include.NON_NULL)
这个注解表⽰,如果值为null,则不返回,还可以在类上添加这个注释,当实体类与json互相转换的时候,属性值为null的不参与序列化。
@JsonInclude(JsonInclude.Include.NON_NULL)public Vector children;
@JsonInclude(JsonInclude.Include.NON_NULL)public class TestJackson{ xxxxxx}
因篇幅问题不能全部显示,请点此查看更多更全内容