Java Fastjson 注解忽略属性转 JSON:示例与实战
Java Fastjson 注解忽略属性转 JSON:示例与实战
在 Java 开发中,我们经常需要将对象转换为 JSON 字符串。有时,我们可能只想保留对象的部分属性,而不想包含所有属性。Fastjson 提供了 @JSONField 注解,可以方便地实现这个功能。
示例:忽略 Person 对象中的 address 和 phone 属性
假设我们有一个名为 Person 的 Java 对象:
public class Person {
private String name;
private int age;
private String address;
private String phone;
// 省略 getter 和 setter 方法
}
如果要将该对象转换成 JSON 字符串,并忽略 address 和 phone 属性,可以在这两个属性上加上 @JSONField 注解,并将 serialize 属性设置为 false,如下所示:
public class Person {
private String name;
private int age;
@JSONField(serialize = false)
private String address;
@JSONField(serialize = false)
private String phone;
// 省略 getter 和 setter 方法
}
然后使用 JSON.toJSONString() 方法将该对象转换成 JSON 字符串:
Person person = new Person();
person.setName('张三');
person.setAge(20);
person.setAddress('北京市');
person.setPhone('13812345678');
String json = JSON.toJSONString(person);
System.out.println(json);
输出结果为:
{"age":20,"name":"张三"}
可以看到,address 和 phone 属性被成功地忽略了。
总结
使用 @JSONField 注解可以方便地控制 Java 对象转换为 JSON 字符串时包含哪些属性。这对于保护敏感信息、控制输出数据量以及提高代码可读性都非常有用。
原文地址: https://www.cveoy.top/t/topic/mQdn 著作权归作者所有。请勿转载和采集!