1

オブジェクトのコレクション(Bean、Hibernateの1対多)があります。例:

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内部コレクションを使用して情報を取得するにはどうすればよいですか?

4

0 に答える 0