本文实例为大家分享了SpringMVC中controller返回json数据的2种方法,供大家参考,具体内容如下
1.jsp的ajax请求:
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
@ResponseBody @RequestMapping("/getJson") public Object getJson(){ return new Object(); }
注意:
1.@ResponseBody的作用:将目标方法的返回值自动转换成json格式,然后返回给前端
3.方法二:
使用手动写的json工具类
@RequestMapping("/getJson") public void getJson(HttpServletResponse response){ Object obj = new Object(); JSONObject json = JSONObject.fromObject(obj); JsonUtils.ajaxJson(json.toString(),response); }
附上JsonUtils工具类的代码:
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(); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。