json格式封装,以及格式转换

来源:互联网 发布:淘宝查号 编辑:程序博客网 时间:2024/06/15 20:02

1.java后台json解析

   string转换成json,

    import net.sf.json.JSONObject;

   string t="";

   JSONObject json=JSONObject.fromObject(t);

   list转换成json格式

   JSONArray jsonArray2 = JSONArray.fromObject(“”);

   前台解析json字符串

   var s=eval('(' + json+ ')');(很实用的js解析json的方式)

  

2、json数据传到前台的几种方法

      方法一、 json.toString()将json数据转换成json格式的字符串到前台,然后前台用 var s=eval('(' + json+ ')');转换,之后用按list对对象s遍历显示即可

     方法二、讲data封装到Map集合中,通过json格式化之后,然后传到前台(个人推荐的一种方法,好处是可以同时多个list且代码复用性好),代码如下

       //根据Map输出JSON,返回null
  public static String ajaxjson(Map<String, Object> map){
      JSONObject json=JSONObject.fromObject(map);
      return  ajax(json.toString(),"text/html");
  }
    // AJAX输出,返回null
    public static String ajax(String content, String type) {
        try {
            HttpServletResponse response = ServletActionContext.getResponse();
            response.setContentType("application/json; charset=UTF-8");
            response.setHeader("Pragma", "No-cache");
            response.setHeader("Cache-Control", "no-cache");
            response.setDateHeader("Expires", 0);
            response.getWriter().write(content);
            response.getWriter().flush();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }

    public class textAction(){

    List example;

    Map<String, Object> map = new HashMap<String, Object>();

   map.put("example",example);

   return ajaxjson(map); 

}

  

0 0
原创粉丝点击