1、前台AJAX请求,后台以对象转JSON形式返回:

后台代码:

 @RequestMapping(value = "/queryDist", method = RequestMethod.POST)
@ResponseBody
public Result queryDist(HttpServletRequest request) {
Boolean f = false;
String devCode = request.getParameter("devCode");
Subject subject = SecurityUtils.getSubject();
String userId = (String) subject.getPrincipal();
User user = userService.getUserById(userId);
log.info("发送盘点指令,设备号是:"+devCode+",盘点指定卡盘:为指定;");
Map map=new HashMap();
try {
//。。。。。。逻辑代码省略。。。。。。。。。。。。。
return new Result(true, ResultCodeEnum.SUCCESS.getRetCode(),ResultCodeEnum.SUCCESS.getRetMsg(),list);
}
} catch (Exception e) {
log.info("加卡指令发送失败"+e.getMessage());
e.printStackTrace();
return new Result(false, ResultCodeEnum.CONNECT_ERROR.getRetCode(),ResultCodeEnum.CONNECT_ERROR.getRetMsg());
}
return new Result(f);
}

其中Result是我们自己的一个java类:

public class Result {
private boolean success;
private String retCode ;
private String retMsg;
private Object data;
private String message;
private String code;
}

前台接受及加工情况:

                        ajaxPost(basePath+"/api/deviceController/queryDist?devCode="+devCode,null,function(data){
if(data.retCode=='00'){
modals.correct("指令发送成功,数据盘点中,请稍后...");
console.log(data.data)
var nums=data.data;
console.log(nums.length)
for (var i=0;i<nums.length;i++){
if (nums[i].indexOf("-")==0){//实际盘库有卡但是数据库记录无卡
$("#showResult").append("<div class=\"eachMassage\" style=\"padding-left:10px;padding-left:10px;width: 90%;height: 25px;line-height: 25px;margin: 5px auto;background-color: rgba(0,0,255,0.3);text-align: left;border-radius: 3px;color: white;\">卡槽"+(0-nums[i])+"数据不匹配:数据库记录无卡,实际盘库结果有卡</div>\n")
} else {
$("#showResult").append("<div class=\"eachMassage\" style=\"padding-left:10px;padding-left:10px;width: 90%;height: 25px;line-height: 25px;margin: 5px auto;background-color:rgba(0,255,0,0.3);text-align: left;border-radius: 3px;color: white;\">卡槽"+nums[i]+"数据不匹配:数据库记录有卡,实际盘库结果无卡</div>\n")
}
}
}else{
modals.error("指令发送失败,连接设备失败");
}
});

2、后台返回的List里面装对象然后转为json:

后台代码:

public List<Comments> findCommentsByMessageId(HttpServletRequest request, HttpServletResponse response,int msgId){
List<Comments> list= service.findCommentsByMessageId(msgId);
//将列表转成json字符串
JSONArray json=JSONArray.fromObject(list);
String jsonString=json.toString();
//将json字符串返回给前台
try {
PrintWriter out =response.getWriter();
out.write(jsonString);
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}

注意:上面的代码执行的前提是目标对象也就是上面的Comments类需要“toString”:

@Override
public String toString() {
return "Comments [commentsId=" + commentsId + ", messageId="
+ messageId + ", messageUserId=" + messageUserId
+ ", commentsUserId=" + commentsUserId + ", commentwords="
+ commentwords + ", publishtime=" + publishtime
+ ", headimgname=" + headimgname + ", nickname=" + nickname
+ "]";
}

前台解析代码:

其他情况待总结

后台以json数据形式返回之后前台接受的方法以及之后的解析总结的更多相关文章

  1. 用ajax获取后台数据,返回json数据,怎么在前台使用?

    用ajax获取后台数据,返回json数据,怎么在前台使用呢?后台 C# code   ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 if (dataType == &qu ...

  2. 传递给后台的Json数据解析

    后台代码如下: public void ProcessRequest(HttpContext context) { context.Response.ContentType = "appli ...

  3. 【Spring学习笔记-MVC-5】利用spring MVC框架,实现ajax异步请求以及json数据的返回

    作者:ssslinppp      时间:2015年5月26日 15:32:51 1. 摘要 本文讲解如何利用spring MVC框架,实现ajax异步请求以及json数据的返回. Spring MV ...

  4. SpringBoot入门篇--对于JSON数据的返回以及处理一

    在后台的开发过程中不可避免的就是一系列对JSON数据的返回,需要我们进行的就是提供各种各样的数据.一般情况下数据类型最常用的就是JSON以及XML,在这里我们就讲讲在SpringBoot里面我们怎样进 ...

  5. jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表

    对于问题从后台获取json数据,将内容填充到下拉列表,代码非常简单,具体过程请看下面代码. 需求:url:链接     par:ID       sel:下拉列表选择器 function BuildS ...

  6. jquery用ajax方式从后台获取json数据,将内容填充到下拉列表。

    从后台获取json数据,将内容填充到下拉列表. url:链接 par:ID sel:下拉列表选择器 //获取下拉列表 function BuildSelectBox(url, par, sel) { ...

  7. Jquery Ajax和getJSON获取后台普通Json数据和层级Json数据解析

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. JSONArray ja = JSONArray.fromObject(list);//特殊类 用于将list转化为JSON 数据并返回 out.print(ja);

    JSONArray ja = JSONArray.fromObject(list);//特殊类 用于将list转化为JSON 数据并返回out.print(ja);

  9. SpringMVC中出现" 400 Bad Request "错误(用@ResponseBody处理ajax传过来的json数据转成bean)的解决方法

    最近angularjs post到后台 400一头雾水 没有任何错误. 最后发现好文,感谢作者 SpringMVC中出现" 400 Bad Request "错误(用@Respon ...

随机推荐

  1. springboot导包spring-boot-starter-parent出现错误

    <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot ...

  2. 关于python3.4版本中的zip函数

    特别注意: 在window,显示变量 print(x);而在linux中 print x 例如,有两个列表: >>>a = [1,2,3] >>>b = [4,5, ...

  3. inux下:热插拔和模块是什么

    一.何为模块? 文件系统.设备驱动程序.网络协议都可以理解为模块.模块本质也是普通的软件系统. 二.热插拔 硬件层面:只在不断电.不关闭系统的情况下增加或者删除对应部件,比如电源.硬盘.一些高端设备硬 ...

  4. Linux系统nmtui/nmcli绑定双网卡为team

    今天给大家带来图形化界面网络配置工具—nmtui的使用方法,可以省去敲命令的繁琐,较少误操作,结果更加直观. 小知识: nmtui:Network Manager Text User Interfac ...

  5. Mac下开发环境的配置

    新安装的mac系统往往要配置各种环境,总是记不住,暂时保存在这,以备后需------- Mac下的包管理工具使用的是brew,首先安装它 官方站:https://brew.sh/ 安装命令: /usr ...

  6. JS获取当前日期和时间的方法,并按照YYYY-MM-DD格式化

    Js获取当前日期时间及其它操作 var myDate = new Date(); myDate.getYear();        //获取当前年份(2位) myDate.getFullYear(); ...

  7. 如何配置SQL Server数据库远程连接

    本地数据库(SQL Server 2012或以上) 连接外网服务器的数据库,外网的服务器端需要做如下配置: 1.首先是要打开 数据的配置管理工具 2.配置相关的客户端协议,开启TCP/IP 3.数据库 ...

  8. Spring框架几种创建bean的方式

    Spring框架下,Bean的创建和装配非常的灵活,提供了三种主要的方式,并且相互见可以互相看见,也就是你可以随意地采用你喜欢且合适的方式创建Bean,而不用担心他们之间的兼容问题. 一.使用XML显 ...

  9. 如何用redis正确实现分布式锁?

    先把结论抛出来:redis无法正确实现分布式锁!即使是redis单节点也不行!redis的所谓分布式锁无法用在对锁要求严格的场景下,比如:同一个时间点只能有一个客户端获取锁. 首先来看下单节点下一般r ...

  10. Python之常用模块之小结

    复习os模块常用的一些操作 import os # 1.切换路径============= d = os.getcwd() #获取当前的工作路径 os.chdir('D:\\')#目录的切换 prin ...