为什么JSON过滤器在bean内部进行空集合?

时间:2012-05-25 08:56:44

标签: java json hibernate serialization filter

我有对象集合(bean,Hibernate one-to-many)。 例如:

class Small{
    private String field1;
    public String getField1(){
        return this.field1;
    }
    public void setField1(String field1){
        this.field1 = field1;
    }
}
class Big {
    Set<Small> list = new HashSet<Small>(0);
    public Set<Small> getList(){
        return this.list;
    }
    public void setField1(Set<Small> list){
        this.list = list;
    }
}

List<Big> list = ....;/// Here I get a list of Big object;
JsonConfig jsonConfig=new JsonConfig();
jsonConfig.setJsonPropertyFilter(new PropertyFilter() {   
    public boolean apply(Object source, String name, Object value) {   
        if (!(name.equals("list")) {
            return true;   
        } else {   
            return false;   
        }   
    }   
}); 

JSONArray json = JSONArray.fromObject(list , jsonConfig);
System.out.println(json.toString());

结果我有下一个字符串:

[{"list":{}}]

列表中没有任何内容,但是当我使用时:

JSONArray json = JSONArray.fromObject(list);

代替

JSONArray json = JSONArray.fromObject(list , jsonConfig);

json向我展示了所有信息。

如何使用jsonConfig并从内部集合中获取信息?

0 个答案:

没有答案