qq_36128558 2017-10-11 02:47 采纳率: 0%
浏览 1718

SSH框架返回json结果集的问题

这是action

 public String staffListQuery() {
        logger.debug("staffListQuery");
        if (pageNo == CodeConstants.PAGE_DEFU) {
            pageNo = CodeConstants.PAGENO_INIT;
        }
        if (pageSize == CodeConstants.PAGE_DEFU) {
            pageSize = CodeConstants.PAGESIZE_INIT;
        }
        try {
            String operatorCode = (String) getSession()
                    .getAttribute("UserCode");
            Page page = staffManageService.queryStaffRecord(
                    staffManageCondition, pageNo, pageSize, operatorCode,
                    exportType);
            /** 将结果值以JSON方式读取 */
            writeJSONData(page, "PERSONID","PERSONNAME","COMNAME","TEAMNAME","VALIDSTATUS","VERIFYSTATUS","OPERATETIMES","OPERATETYPE","VERIFYTYPE");
        } catch (Exception e) {
            this.writeJSONMsg(e.getMessage());
        }
//      System.out.println(JSONArray.fromObject(writeJSONData.jsonObject));
        return null;

    }

这是json

 public void writeJSONData(Page page, String... args) {
        try {
            Assert.notEmpty(args);
            List dataList = new Vector();
            List list = page.getResult();
            int size = args.length;
            for (Iterator iter = list.iterator(); iter.hasNext(); ) {
                Object element = iter.next();
                Map dataMap = new HashMap(size);
                for (int i = 0; i < size; i++) {
                    Object value = null;
                    if (args[i].indexOf('.') > -1) {
                        String[] arrArg = StringUtils.split(args[i], '.');
                        value = element;
                        for (int j = 0; j < arrArg.length - 1; j++) {
                            value = PropertyUtils.getProperty(value, arrArg[j]);
                            if(value != null){
                                value = PropertyUtils.getProperty(value,arrArg[(j + 1)]);
                            }
                        }
                    } else {
                        value = PropertyUtils.getProperty(element, args[i]);
                    }
                    dataMap.put(args[i], fixValueForJSON(value));
                }
                dataList.add(dataMap);
            }
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("totalRecords", page.getTotalCount());
            jsonObject.put("data", JSONArray.fromObject(dataList));
            renderHtml(jsonObject.toString());
        } catch (Exception e) {
            e.printStackTrace();
            writeJSONMsg(e.getMessage());
        }
    }

JSON有值图片说明
这里没值
图片说明

  • 写回答

2条回答 默认 最新

  • devmiao 2017-10-11 02:59
    关注
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!