您的位置:首页 > Web前端 > JavaScript

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

2015-07-10 16:03 627 查看

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); 

}

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  json