0%

JsonProperty注解

@JsonProperty注解的使用

前端传参数过来的时候,使用这个注解,可以获取到前端与注解中同名的属性 。后端处理好结果后,返回给前端的属性名也可以不以实体类属性名为准,而以注解中的属性名为准。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//@JsonProperty 此注解用于属性上,作用是把该属性的名称序列化为另外一个名称,如把trueName属性序列化为name
@JsonProperty("name")

import com.fasterxml.jackson.annotation.JsonProperty;

public class Student implements Serializable{

@JsonProperty("name")
private String trueName;

public String getTrueName() {
return trueName;
}

public void setTrueName(String trueName) {
this.trueName = trueName;
}
}
测试
1
2
3
4
5
6
7
8
9
10
11
12
13
import com.fasterxml.jackson.core.JsonProcessingException; 
import com.fasterxml.jackson.databind.ObjectMapper;

public class Main {
public static void main(String[] args) throws JsonProcessingException {
Student student = new Student();
student.setTrueName("张三");

//使用writeValuesAsString的方法就可以把对角转化成json字符串。

System.out.println(new ObjectMapper().writeValueAsString(student));
}
}
得到的结果
1
{"name":"张三"}