前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringMVC中controller返回json数据的两种方法

SpringMVC中controller返回json数据的两种方法

作者头像
用户2409797
发布2018-08-30 17:23:03
7.2K0
发布2018-08-30 17:23:03
举报
文章被收录于专栏:Java修行之道Java修行之道

SpringMVC中controller返回json数据的两种方法

1.jsp的ajax请求:

代码语言:javascript
复制
function getJson(){
    $.ajax({
        type:"get",
        dataType:"json",
        url:"<%=basePath %>getJson",
        success:function(data){
            for(var i=0;i<jsonData.length;i++){
                alert("Id:"+data[i].id+"   username:"+data[i].username);
            }
        },
     error:function(e){
      alert(e);
      }
    })
}

2.方法一:

使用springmvc原生注解@ResponseBody

代码语言:javascript
复制
    @ResponseBody
    @RequestMapping("/getJson")
    public Object getJson(){
        return new Object();
    }

注意:

1.@ResponseBody的作用:将目标方法的返回值自动转换成json格式,然后返回给前端

3.方法二:

使用手动写的json工具类

代码语言:javascript
复制
    @RequestMapping("/getJson")
    public void getJson(HttpServletResponse response){
     Object obj = new Object();
       JSONObject json = JSONObject.fromObject(obj);
        JsonUtils.ajaxJson(json.toString(), response);
    }

附上JsonUtils工具类的代码:

代码语言:javascript
复制
import java.io.IOException;

import javax.servlet.http.HttpServletResponse;

public class JsonUtils {
    public static void ajaxJson(String jsonString,HttpServletResponse response) {
        ajax(jsonString, "application/json",response);
    }
    public static void ajax(String content, String type,HttpServletResponse response) {
        try {
            response.setContentType(type + ";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();
        }
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-09-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SpringMVC中controller返回json数据的两种方法
    • 1.jsp的ajax请求:
      • 2.方法一:
        • 使用springmvc原生注解@ResponseBody
      • 3.方法二:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档