日期:2014-05-17  浏览次数:20923 次

请教JSONObject中的JsonConfig的配置
我有一个Map,其它有一个键值的值类型是List<T>,如map.put("list",List<T>);,现在我想将这个map序列化为json数据,但是List<T>中的T对象,我只想序列化部分属性,不知道应该怎样做,请指教!
     在网上找了,都是这样配置的
     JsonConfig jsonConfig = new JsonConfig();  
     jsonConfig.setExcludes(new String[] { "name", "sex" }); 
     但是这样只是序列化bean,我现在是想序列化map下的list中的bean,不知道应该配置
------解决方案--------------------
遍历list不行吗
------解决方案--------------------
还真没用过这个config,不过我觉的直接使用JSONObject的put来生成json对象更好,除非你的config可用于很多地方,可重用性非常强
------解决方案--------------------
想一次性配置好,直接调用,据我所知是不行的,不过你可以分两步搞:

    JSONObject ret = new JSONObject();

    //下面遍历Map,对于每个entry,执行
    ret.put(entry.getKey(), JSONSerializer.toJSON(entry.getValue(), jsonConfig);
    
    //Done!


------解决方案--------------------
jsonConfig.registerPropertyExclusions(Class target, String[] properties);
这个方法就是只排除某个类中的属性