查了一下这个注释:
@JsonProperty 此注释用于属性上,作用是把属性的名称序列化为另外一个名称,如把名为 “trueName” 的属性序列化为 “name”。
public class Student implements Serializable{ @JsonProperty("name") private String trueName; public String getTrueName() { return trueName; } public void setTrueName(String trueName) { this.trueName = trueName; } } /*测试*/ 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)); } } 得到结果 {"name":"张三"}
注意事项:类和父类必须都实现序列化后,才可以反序列化,类没有实现序列化,也可以使用此注解序列化。
感觉这个注解的作用是:
1. 前端传参数过来的时候,使用这个注解,可以获取到前端与注解中同名的属性;
2. 后端处理好结果后,返回给前端的属性名也不以实体类属性名为准,而以注解中的属性名为准。