@JSONField注解具有什么功能呢?
下文笔者讲述@JSONField注解的功能简介说明,如下所示
@JSONField注解的功能
@JSONField注解的功能
可以定义json字符串的输出和输入key名称
@JSONField注解的使用场景:
可用在方法(method)
属性(field)及方法上的参数(parameter)上
他们的功能都是指定JSON串中key的名称
@JSONField注解的示例
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Student {
@JSONField(name = "name")
private String name;
@JSONField(name = "AGE")
private String age;
// @JSONField也可以直接作用在get或set方法上
@JSONField(name = "name")
public String getName() {
return name;
}
@JSONField(name = "name")
public void setName(String name) {
this.name = name;
}
@JSONField(name = "AGE")
public String getAge() {
return age;
}
@JSONField(name = "AGE")
public void setAge(String age) {
this.age = age;
}
public static void main(String[] args) {
Student student = Student.builder().name("maomao").age("19").build();
String jsonString = JSONObject.toJSONString(student);
System.out.println("bean to json: " + jsonString);
student = JSONObject.toJavaObject(JSONObject.parseObject(jsonString), Student.class);
System.out.println("json to bean: " + student.getName());
}
}
JSON支持类型
设置日期格式 @JSONField(format="yyyy-MM-dd HH:mm:ss") private Date date;
设置字段顺序
Fastjson序列化一个java bean 使用FieldName的字母进行序列的 可通过ordinal指定字段的顺序 @JSONField(ordinal = 3) private int f0; @JSONField(ordinal = 2) private int f1; @JSONField(ordinal = 1) private it f2;
设置字段不序列化
@JSONField(serialize=false) public Date date;
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


