解决方案 »

  1.   

    1.   Java代码中利用map及list构造json对象
        
          Map构造json:
                Map map = new HashMap();
                map.put("test1","10001");
                map.put("test2","10002");
                map.put("test3","10003");
                JSON json = JSONObject.fromObject(map);
            json解析成Java对象:
                 MorphDynaBean m = (MorphDynaBean) JSONSerializer.toJava(json);  /*构造MorphDynaBean对象*/
                 m.get("test1"); 
                 m.get("test2");
                 m.get("test3");        
      
             List构造json:
                  List list = new ArrayList();
                  list.add("10001");
                  list.add("10002");
                  list.add("10003");
                  JSON json = JSONArray.fromObject(list);
                  ArrayList ls = (ArrayList) JSONSerializer.toJava(json);
               json解析成Java对象
                  ArrayList arrayList = (ArrayList) JSONSerializer.toJava(ls);            /*解析成arraylist*/
          ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    2.   JQuery中使用json对象:
          ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
          <script type="text/javascript" src="/JqueryWeb/jquery/jquery-1.5.2.js"></script>
     
          <script type="text/javascript">
                  $(document).ready(function(){
                           $("#test1").click(function(){
                                $.getJSON("register.action",{data:"123456"},
                                           function(data){
                                                 alert(data.a+":"+data.b+":"+data.c);
                                        });
                            });
                   });
          </script>
      

  2.   

    解析json对象,重新构造成你需要的就可以了,没有其他办法...............
      

  3.   

    你重新订一个model 然后去掉你不需要的json 字段,然后用
    第3方工具转化。
      

  4.   

    参见帖子 http://bbs.csdn.net/topics/390816741
      

  5.   

    用fastjson,对象跟json之间互相转换,不需要的属性可以直接用注解配置不要序列化,然后你得到的对象就只是你想要的。
      

  6.   

    亲,你想多了,现在json哪还有处理不过来的,多复杂的对象和数据相互转换都是没有问题的!参考一下这篇文章http://blog.csdn.net/luo201227/article/details/23436951
      

  7.   

    Province p1=new Province(1,"四川省");
      Province p2=new Province(1,"浙江省");
      Province p3=new Province(1,"山西省");
      List<Province> list=new ArrayList<Province>();
      list.add(p1);list.add(p2);list.add(p3);
       response.setHeader("content-type", "text/html;charset=utf-8");
      PrintWriter pw=response.getWriter();
      JsonConfig config=new JsonConfig();
      //使用这个方法可以将不需要转成json格式的字段 屏蔽掉
      config.setExcludes(new String[]{"id"});

      //将一个集合转换成json格式
      String data=JSONArray.fromObject(list,config).toString();
      //讲一个对象转换成Json格式,同样可以使用JsonConfig屏蔽不想要转换的字段
      String data2=JSONObject.fromObject(p1).toString();
      System.out.println(data);
      pw.write(data);
    我用的是Json-lib
      

  8.   

    private static void test() {
    // TblAreaCodeDTO  dto1  =new TblAreaCodeDTO();
    // dto1.setId("1a");
    // dto1.setAreaName("haha");
    // TblAreaCodeDTO  dto2  =new TblAreaCodeDTO();
    // dto2.setId("1b");
    // dto2.setAreaName("baba");
    // TblAreaCodeDTO  dto3  =new TblAreaCodeDTO();
    // dto3.setId("1c");
    // dto3.setAreaName("dada");
    // List<TblAreaCodeDTO> list=new ArrayList<TblAreaCodeDTO>();
    // list.add(dto1);
    // list.add(dto2);
    // list.add(dto3);
    // JsonConfig j=new JsonConfig();
    // //过滤的属性
    // j.setExcludes(new String[]{"pageNo","pageSize","parentId","multipartRequestHandler","servletWrapper","sortIndex"});
    // net.sf.json.JSONArray jj=net.sf.json.JSONArray.fromObject(list, j);//对象过滤属性后转json
    // System.out.println(jj);
    // TblAreaCodeDTO td=new TblAreaCodeDTO();
    // Object[] ob=new Object[jj.size()];
    // for (int i = 0; i < jj.size(); i++) {
    // JSONObject jsj=jj.getJSONObject(i);
    // ob[i]=jsj.toBean(jsj, TblAreaCodeDTO.class);
    //
    // }
    // //json转对象
    // for (int i = 0; i < ob.length; i++) {
    // td=(TblAreaCodeDTO)ob[i];
    // }
    // System.out.println("-ID=:"+td.getId()+"----name=:"+td.getAreaName());
    //
    // }