Java Gson-条件JSON反序列化(健全性检查)
我的android项目中有代码,可以使用gson将json正确地反序列化到POJO中。我希望在传入的json中添加一些条件验收检查(健全性检查)。例如,对于下面的数据结构,我希望gson解析器只添加开始日期<结束日期的对象。我知道我可以在填充列表后遍历列表以删除无效项,但我想知道是否有任何方法可以动态拒绝这些项。任何帮助都将不胜感激 示例JSONJava Gson-条件JSON反序列化(健全性检查),java,android,json,parsing,gson,Java,Android,Json,Parsing,Gson,我的android项目中有代码,可以使用gson将json正确地反序列化到POJO中。我希望在传入的json中添加一些条件验收检查(健全性检查)。例如,对于下面的数据结构,我希望gson解析器只添加开始日期
{
"Items" : [
{
"Name" : "Example Name",
"Start" : "2010-10-16 10:00:00",
"End" : "2011-03-20 17:00:00",
<other fields>
},
<several more items>
]
}
{
“项目”:[
{
“名称”:“示例名称”,
“开始”:“2010-10-16 10:00:00”,
“结束”:“2011-03-20 17:00:00”,
},
]
}
ItemList.java
public class ItemList {
private List<ItemHeader> Items;
public void setItemHeaders(List<ItemHeader> headers) {
Items = headers;
}
public List<ItemHeader> getItemHeaders() {
return Items;
}
}
公共类项目列表{
私人清单项目;
公共void setItemHeaders(列表标题){
项目=标题;
}
公共列表getItemHeaders(){
退货项目;
}
}
ItemHeader.java有name、start、end和所有其他字段。您需要编写自己的反序列化程序,并在不满足条件时让它抛出异常 我不知道你应该这么做,但这是可能的