这篇来说说什么是Jackson:
一个基于Java的简单应用库
作用:用来将Java对象转换成json对象和xml文档,且同时可以将json和xml文档转换为Java对象
看到上面一句话,我们不难发现,java和Jackson的区别,其实就好比是JavaScript与json的区别,json是用来将Js对象转换为json字符串对象,或是将json字符串转换为js对象
同时Jackson只是这种转换关系的其中一种,但是其简单易用且性能高的原因,我们通常会使用该应用库
其具有以下特点;
1简单易用 在使用过程中,直接使用注解的方式即可
2性能高,快速,占用内存低
3不依赖,除了JDK,不需要其他的库
4开源代码,免费使用
二,Jackson常用属性
@JsonIgnore 该注解用于去除默个属性,被注解的属性不会被加入到Jackson序列化或反序列中
public class user{
@JsonIgnore
private String name;
private String address;
}
@JsonIgnoreProperties该注解是用于取出多个属性,被注解的多个属性同样不会被加入到Jackson序列化或反序列化中
@JsonIgnoreProperties({"name"},{"address"})
public class user{
private String name;
private String address;
}
@JsonFormat该注解通常用在属性上,设置该属性的返回数据格式
@JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss a",locale="zh",timezone="GMT+8")
private Date birthday;
@JsonInclude 在该属性为空的时候,不会加入到序列化或反序列化的队伍中,只有当该属性有值的时候,才会对其进行序列化并返回给前端
//需求:在很多时候,返回的结果中,有数据为空的时候,前端是不希望返回到前端去的,所以我们可以使用注解,
@JsonInclude(JsonInclude.Include.NON_NULL)
private String desc;
以上这四种,就是比较常用的Jackson属性了!