这篇文章主要为大家展示了“jQuery中Ajax接收java返回数据的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery中Ajax接收java返回数据的示例分析”这篇文章吧。
1.前端Ajax请求如下:
$.ajax({ type : "post", //async:false, url : PATH + "/product/selectPicture.action", dataType : "json", success : function(data) { $.each(data,function(k,v){ alert(k +":"+ v); }); } });
2 其中PATH在jsp页面中定义:
<% String path=request.getContextPath(); %> <script> var PATH = ‘<%=path%>'; </script>
2.1 后端java代码输出json格式数据:
List<Map<String,Object>> list = bo.selectData(); response.setContentType("application/json;charset=GBK"); PrintWriter out=response.getWriter(); out.write(JSONArray.fromObject(list).toString()); out.flush(); out.close();
其中list为从数据库中查出的数据,JSONArray.fromObject(list)需要导入json-lib-2.4-jdk15.jar包,而且这个包需要在导入几个依赖包才能用这个百度一下吧。注意返回的格式为json,和编码格式。
2.2 也可以使用alibaba的fastjson1.2.8.jar包,那么后端就该这么写:
List<Map<String,Object>> list = productService.selectCategory(); String jsonString = JSON.toJSONString(list, true); response.setContentType("application/json;charset=utf-8"); PrintWriter out = response.getWriter(); out.write(jsonString); out.flush(); out.close();
2.3 如果后端用的是基于注解的springMVC,就这么写:
@ResponseBody public JSONArray selectData(HttpServletRequest request){ List<Map<String,Object>> list= bo.selectData(); return JSONArray.fromObject(list); }
就是在方法前加上@ResponseBody注解,并return json格式的数据即可。
3 如果Ajax要求返回的数据类型为 dataType : “html”,那么后端java就是:
String key = bo.selectData(); response.setContentType("text/html;charset=utf-8"); Writer out = response.getWriter(); out.write(key); out.flush(); out.close();
在Ajax的success : function(data) { }方法中,data就是就是从后端返回的数据。
以上是“jQuery中Ajax接收java返回数据的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。