jsonObject的一些方法
1.从前端传过来的数字,默认是Integer类型不能直接用Long接收
错误写法:
报错:Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
Long demendid=(Long)jsonObject.get("demandId");
正确写法:
Long demendid=((Integer)jsonObject.get("demandId")).longValue();
Long demendidd=((Number)jsonObject.get("demandId")).longValue();
最简便的:
Long demandId=jsonObject.optLong("demandId");
与jsonObject.optLong()类似还有
jsonObject.optInteger()
jsonObject.optInt()
jsonObject.optBoolean()
jsonObject.optString()
jsonObject.optJSONArray()
转换为对象
Demand demand = (Demand) JSONObject.toBean(demandJson, Demand.class);
2.前端传来JSON字符串有值 但无法转为java对象。
A.前端传来的属性包含集合属性,可直接将整体转为json字符串传过来后端用对象接收 ,加上@RequestBody,前端属性名字和后端接收的对象的属性名字一样就可以将对应的List集合传到后端。

b.其他情况如 后台是字符串接收,或者集合是某个属性对象的属性,则只能先转为json字符串,然后擦护脑后台再转回来。
----------------------------------
需要网后台传一个拼装好的json字符串,刚开始各种错误 如var message=“{message:msg,sid: '18212341252',toAll: 'false'}“;
在花括号外面加了引号,所以报错。
花括号里面引号不必须加,花括号外面肯定不能加引号,然后还要用JSON.stringify(),否则后台收到的就是object无法转换
正确写法;
function send() {
var msg= document.getElementById('text').value;
var message={message:msg,
sid: '18212341252',
toAll: 'false'};
var s=JSON.stringify(message)
websocket.send(s);
}
jsonObject的一些方法的更多相关文章
- org.json.JSONObject的optXXX方法
JSONObject有很多optXXX方法,比如optBoolean,optString,optInt.... 他们的意思是:如果这个JSONObject对象,如果有返回这个属性的值,如果没有返回一个 ...
- java.lang.ClassCastException: net.sf.json.JSONNull cannot be cast to net.sf.json.JSONObject的解决方法
报错情况已经说明了,在百度查了好几个解决方法,这里总结一下: 首先:加一个判断是否为空,再做操作 // 得到json串 String jsonString = UtilPOSTGET.UPost(FO ...
- JSONObject的parseArray方法作用。
该方法将字符串数据转换成集合对象. String dep_tree = JedisUtils.getInstance().get(CacheConstant.DEP_TREE, user.getId( ...
- 【转】 JSONObject使用方法
随笔- 46 文章- 0 评论- 132 JSONObject简介 本节摘要:之前对JSON做了一次简单的介 绍,并把JSON和XML做了一个简单的比较:那么,我就在想,如果是一个json格式的字 ...
- JSONObject使用方法详解
1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包. 2.下载jar包 http:// ...
- JSONObject使用方法
转载:http://blog.csdn.net/dongzhouzhou/article/details/8664569 1.JSONObject介绍 JSONObject-lib包是一个beans, ...
- 两个对象值转换的方法(BeanUtils.copyProperties与JSONObject.parseObject对比)
将源对象赋值到目标对象方法: 方法一:BeanUtils.copyProperties(源对象, 目标对象); //org.springframework.beans.BeanUtils 方法二:目标 ...
- JSONObject简介
JSONObject简介 本节摘要:之前对JSON做了一次简单的介绍,并把JSON和XML做了一个简单的比较:那么,我就在想,如果是一个json格式的字符串传到后台,需要怎么对其处理?如果前台页面需要 ...
- android JSON解析之JSONObject与GSON
1.写在前面 JSON数据是android网络开发中常见的数据格式,JSON最常见的传输方法是使用HTTP协议,关于android开发中HTTP协议的使用方法可参考我的另一篇随笔android网络编程 ...
随机推荐
- ectouch ucenter用户注册失败问题
ectouch 注册时没有给ecshop传下面这几个值: `alias` ) NOT NULL DEFAULT '' , `msn` ) NOT NULL DEFAULT '' , `qq` ) NO ...
- spring4.1.6配置quartz2.2.1(maven) <转>
Spring3.0不支持Quartz2.0,因为org.quartz.CronTrigger在2.0从class变成了一个interface造成IncompatibleClassChangeError ...
- eclipse 里的tomcat一直处于starting状态
今天困扰了我一天,eclipse里面明明吧tomcat启动成功了,但是有个starting tomcat的进程一直在启动着,当你修改页面,build workspace的时候,进程就一直处于等待状态, ...
- Hibernate- hibernate二级缓存
原文地址:http://www.iteye.com/topic/18904 很多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇文章介绍一下hibernate的二级缓存的,今天终于忍不住了. ...
- Aria2 懒人安装教程
https://aria2.github.io/ uI版:https://github.com/ziahamza/webui-aria2 web的 可以在线使用的 https://ziahamza.g ...
- skynet1.0阅读笔记2_skynet的消息投递skynet.call
为了了解 skynet.call 的调用过程,需要先看看 skynet的队列是如何把包分到不同工作线程的.看下图 查看 global_queue 的skynet_globalmq_push和skyne ...
- r语言,安装外部包 警告: 无法将临时安装
安装R语言中的外部包时,出现错误提示 试开URL’https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/contrib/3.3/ggplot2_2 ...
- Hibernate--关系映射和关联关系的CRUD
- 关于矢量图片资源向后兼容:CompatVectorFromResourcesEnabled标志的使用
StackOverflow上摘抄的: some things have changed since I asked this question so I will answer it myself.W ...
- Ubuntu下启动/重启/停止apache服务器
Task: Start Apache 2 Server /启动apache服务# /etc/init.d/apache2 startor$ sudo /etc/init.d/apache2 start ...