JSON工具类

来源:互联网 发布:马苏德阿兹哈尔 知乎 编辑:程序博客网 时间:2024/06/13 06:59

服务器端代码:

package com.winstar.oa.util.tools;import java.io.IOException;import java.io.PrintWriter;import java.util.HashMap;import java.util.Map;import javax.servlet.http.HttpServletResponse;import net.sf.json.JSONArray;import net.sf.json.JSONObject;import com.winstar.oa.util.constant.Constants;/** *  */public class JSONUtil {    /**     * 把对象转换成json字符串写到客户端     * @param response Http应答     * @param obj 需要写到客户端的数据对象     * @param clazz 需要记录的日志class     */    public static void writeJSONString(HttpServletResponse response, Object obj) {        PrintWriter out = null;        try{            JSONObject jsonObject = JSONObject.fromObject(obj);            response.setCharacterEncoding("utf-8");            out = response.getWriter();            String str = jsonObject.toString();            out.write(str);        } catch(IOException e) {        } finally {            if(out != null) {                out.close();            }        }    }    public static void writeJSONArrayString(HttpServletResponse response, Object obj) {        PrintWriter out = null;        try{            //JSONObject jsonObject = JSONObject.fromObject(obj);            JSONArray jsonArray = JSONArray.fromObject(obj);            response.setCharacterEncoding("utf-8");            out = response.getWriter();            String str = jsonArray.toString();            out.write(str);        } catch(IOException e) {         } finally {            if(out != null) {                out.close();            }        }    }    /**     *      */    public static Map<String, Object> codeErrorMap(){        Map<String, Object> codeMap = new HashMap<String, Object>();        codeMap.put("data", Constants.EMPTY);        codeMap.put("code", "2");        return codeMap;    }    public static void sendError(HttpServletResponse response) {        try {            response.sendError(500);        } catch (IOException e) {        }    }}

前端JS中解析:
var results = eval(“(” +result+ “)”);

$.ajax({           type: "POST",           url: "admmodular/inventory/noFilterGetAllInfo.do",           data: "firstSelected="+firstSelected+"&secondSelected="+secondSelected,           success: function(result){               var results = eval("(" +result+ ")");              $("#select3").find("option").remove();              if (results.code == 1) {                    /*不写null时,会直接使用上面的html,不会覆盖,即重新定义不会覆盖*/                    var html = null;                    if (null != results.thirdList && results.thirdList.length>0) {                        for (var i = 0; i < results.thirdList.length; i++) {                            html+='<option value="'+results.thirdList[i].id+'">'+results.thirdList[i].typeName+'</option>'                        }                           $("#select3").append(html);                    }else{                       $("#select3").append("<option value='0'>请选择</option>");                    }                }else{                       $("#select3").append("<option value='0'>请选择</option>");                }            }    })
0 0
原创粉丝点击