firemail

标题: 解析json json串转对象 [打印本页]

作者: java    时间: 2017-8-7 18:12
标题: 解析json json串转对象
本帖最后由 java 于 2017-8-10 19:15 编辑
  1. String jsonString = stringHttpResponse.getContent();
  2.             ObjectMapper mapper = new ObjectMapper();
  3.             try {

  4.                 JsonNode root = mapper.readTree(jsonString);
  5.                 Integer code = Integer.valueOf(root.get("code").asText());
  6.                 String msg = root.get("msg").asText();
  7.                 JsonNode dataAd = root.get("data");
  8.                 Integer adCount = Integer.valueOf(dataAd.get("adCount").asText());
  9.                 JsonNode adList = dataAd.get("adList");
  10.                 if (code == 0 && adCount == 1) {
  11.                     eventToast.setUrl(adList.get(0).get("url").asText());
  12.                     eventToast.setDeepLink(adList.get(0).get("deepLink").asText());
  13.                     eventToast.setText(adList.get(0).get("text").asText());
  14.                     eventToast.setTextLeft(adList.get(0).get("textLeft").asText());
  15.                     eventToast.setTextRight(adList.get(0).get("textRight").asText());
  16.                     eventToast.setActionId(Integer.valueOf(adList.get(0).get("actionId").asText()));

  17.                     JsonNode tkLoadUrlsNode = adList.get(0).get("tkLoadUrls");
  18.                     if (tkLoadUrlsNode.size() > 0) {
  19.                         String tkLoadUrl = tkLoadUrlsNode.get(0).asText();
  20.                         eventToast.getTkLoadUrls().add(tkLoadUrl);
  21.                     }

  22.                     JsonNode tkExposureUrlsNode = adList.get(0).get("tkExposureUrls");
  23.                     if (tkExposureUrlsNode.size() > 0) {
  24.                         String tkExposureUrl = tkExposureUrlsNode.get(0).asText();
  25.                         eventToast.getTkExposureUrls().add(tkExposureUrl);
  26.                     }

  27.                     JsonNode tkClickUrlsNode = adList.get(0).get("tkClickUrls");
  28.                     if (tkClickUrlsNode.size() > 0) {
  29.                         String tkClickUrl = tkClickUrlsNode.get(0).asText();
  30.                         eventToast.getTkClickUrls().add(tkClickUrl);
  31.                     }
  32.                 }
  33.             } catch (IOException ex) {
  34.                 logger.error("VipPayServiceImpl handleAdResult: parse data failed, data = '{}', errorMsg = '{}'", stringHttpResponse.getContent(), ex.getMessage());
  35.             }
复制代码

作者: java    时间: 2017-8-8 11:21
本帖最后由 java 于 2017-8-10 19:14 编辑

import com.fasterxml.jackson.databind.JsonNode;
JsonNode root = retMapper.readTree(jsonString);
  String result = root.get("result").asText();
  Iterator<JsonNode> realElements = dataType.elements();
                while (realElements.hasNext()) {
                 JsonNode realElement = realElements.next();
                }



http://neverflyaway.iteye.com/blog/2299805





欢迎光临 firemail (http://firemail.wang:8088/) Powered by Discuz! X3