您的位置:首页 > 编程语言 > Java开发

FastJson只序列化java对象的部分属性

2015-10-12 11:12 627 查看
public class Student {

private int id;
private String name;
private int age;

//get set方法略
}
如下方法:
Student student = new Student(0, "Aaron", 24);
System.out.println(JSON.toJSONString(student,true));
输出为:
{
"age":24,
"id":0,
"name":"Aaron"
}
如果我们想要将实体类中的某个字段或某几个不进行解析呢?那么我们可以使用transient 关键字,来标记它为不需要的,在fastjson中还提供了一种便捷的方法来自定义我们需要序列化的字段,
SimplePropertyPreFilter filter = new SimplePropertyPreFilter(实体类.class, "字段1","字段2"); //字段为我们需要序列化的字段,如果实体类中没有改字段则不解析放弃该字段而不会报错。
SimplePropertyPreFilter filter = new SimplePropertyPreFilter(Student.class, "id","age");
String jsonStu =JSON.toJSONString(students,filter);
这样就只会序列化 id和age 的字段。

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: