struts,如何让一个json数据传出到前台

首先有个json数据;


jsonData = "{success:false, msg:'缺少dataType参数!'}";

或者调用下面的方法,让她变成json数据


public static String toJson(boolean success, String key, String value) {
        Map<String, String> jsonMap = new HashMap<String, String>();
        jsonMap.put(key, value);
        return toJson(success, jsonMap);
    }
public static String toJson(boolean success, Map<String, String> jsonMap) {
        StringBuffer buffer = new StringBuffer();
        if (success) {
            buffer.append("{success:true");
        } else {
            buffer.append("{success:false");
        }

        if (jsonMap.size() > 0) {
            buffer.append(",");
            for (String key : jsonMap.keySet()) {
                if (!key.equals("class"))
                    buffer.append(key + " : '" + jsonMap.get(key) + "',");
            }
            // 去掉最后一个','
            buffer.deleteCharAt(buffer.length() - 1);
        }
        buffer.append("}");
        return buffer.toString();
    }

jsonData = "{success:false, msg:'缺少dataType参数!'}";

或者:

 这样json数据就生成了,接下来,将json输出到前台

/**
     * JSON格式的输出
 
     */
    protected void writeJSON(String jsonData) {
        try {
            outputAjaxJsonData(jsonData);
        } catch (Exception ex) {
            logger.error("输出信息报错", ex);
        }
    }



 /**
     * 将数据以ajax方式输出到页面
     *
     * @param String 输出到界面的信息
     */
    protected void outputAjaxJsonData(String outputString) {
        try {
            HttpServletResponse response = this.getResponse();
            response.setContentType("text/json");
            response.setCharacterEncoding("utf-8");
            response.setHeader("Cache-Control", "no-cache");
            response.getWriter().write(outputString);
            response.getWriter().close();
        } catch (Exception ex) {
            logger.error("HttpServletResponse 输出流报错", ex);
        }
    }

jsonData = "{success:false, msg:'缺少dataType参数!'}";
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值