why070809123
2017-07-13 07:18
采纳率: 33.3%
浏览 6.7k
已采纳

java菜鸟求助如何将list数据放入json中??

ObjectNode waterMeterNode = mapper.createObjectNode();
waterMeterNode.put("serviceId", "WaterMeter");
ObjectNode waterMeterData = mapper.createObjectNode();

waterMeterData.put("timeOfReading", md.getTimeOfReading());
waterMeterData.put("P1", md.getP1());
waterMeterData.put("P2", md.getP2());
waterMeterData.put("P3", md.getP3());
waterMeterData.put("A1", md.getA1());
waterMeterData.put("A2", md.getA2());
waterMeterData.put("A3", md.getA3());
这段代码需要生成json数据,不过get里面传过来的是list数据它就会报错,我应该怎么修改才能够将list数据放入json中?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • codebaby27 2017-07-13 07:25
    已采纳
    1. List集合转换成json代码 List list = new ArrayList(); list.add( "first" ); list.add( "second" ); JSONArray jsonArray2 = JSONArray.fromObject( list );
    2. Map集合转换成json代码 Map map = new HashMap(); map.put("name", "json"); map.put("bool", Boolean.TRUE); map.put("int", new Integer(1)); map.put("arr", new String[] { "a", "b" }); map.put("func", "function(i){ return this.arr[i]; }"); JSONObject json = JSONObject.fromObject(map);
    3. Bean转换成json代码 JSONObject jsonObject = JSONObject.fromObject(new JsonBean());
    4. 数组转换成json代码 boolean[] boolArray = new boolean[] { true, false, true }; JSONArray jsonArray1 = JSONArray.fromObject(boolArray);
    5. 一般数据转换成json代码 JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']" );
    打赏 评论
  • 红橡树 2017-07-13 07:29

    直接声明一个LinkedHashMap maps = new LinkedHashMap(); 然后将数据填入,最后再转成json就行

    打赏 评论
  • qq_37259850 2017-07-13 07:30

    直接转换一下就可以 百度很多demo

    打赏 评论
  • 丵鹰 2017-07-13 07:32

    你的md应该是个对象
    JsonConfigUtil这个类的地址:http://blog.csdn.net/strutce/article/details/75068944
    在这个类中有个方法jsonMap(),你把你对象中的复杂类型放入这个map中。哪些已经存在你不使用的删掉

     JsonConfigUtil jsonConfig = new JsonConfigUtil();
    JSONObject jsonStr=JSONObject.fromObject(request, jsonConfig.jsonConfigUtil());
    
    打赏 评论
  • 我写一段 你参考下
    先声明一个JSON数组
    JSONArray jsonArray = new JSONArray();
    //假设下面啊的LIST是有数据的
    List shipGroup = new ArrayList();
    for (int i = 0; i < shipGroup.size(); i++) {
    JSONObject jsonObject = new JSONObject();
    jsonObject.put("id", i + 1);
    jsonObject.put("name", shipGroup.get(i).getShipGroupName());
    //把JSONOBJECT放入数组
    jsonArray.add(jsonObject);}

    打赏 评论

相关推荐 更多相似问题