微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery的Ajax接收java返回数据方法

1.前端Ajax请求如下:

rush:js;"> $.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页面中定义:

rush:js;"> <% String path=request.getContextPath(); %>

2.1 后端java代码输出json格式数据:

rush:js;"> List> 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包,那么后端就该这么写:

rush:js;"> List> 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,就这么写:

rush:js;"> @ResponseBody public JSONArray selectData(HttpServletRequest request){ List> list= bo.selectData(); return JSONArray.fromObject(list); }

就是在方法加上@ResponseBody注解,并return json格式的数据即可。

3 如果Ajax要求返回的数据类型为 dataType : “html”,那么后端java就是:

rush:js;"> 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返回数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

原文地址:https://www.jb51.cc/jquery/31071.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐