关闭

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

标签: json
568人阅读 评论(0) 收藏 举报
分类:

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

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:37195次
    • 积分:786
    • 等级:
    • 排名:千里之外
    • 原创:42篇
    • 转载:9篇
    • 译文:0篇
    • 评论:1条
    最新评论