fastjson 对于json数组字符串的处理
来源:互联网 发布:html js display none 编辑:程序博客网 时间:2024/05/17 04:03
这是我第一次在csdn写博文,如果有表达欠佳的地方,还请大家见谅!
这次撰写博文,主要是想和大家分享一下fastjson对于json数组字符串的一种处理方法。
今天在做项目的时候,对于{"dto":[{"name":"SereneLeong"}]}这种json数组字符串的处理,我一是难以下手。我在转化{"dto":[{"name":"SereneLeong"}]}这种json数组字符串的时候,发现若将其转为JSONObject就无法正确将其最终转为目标的java对象;若将其转为JSONArray对象,则编译器会报错。在网上搜索了一些帖子,大家对于json字符串处理的解决方案要不忽略了这种构造的json字符串的构造方式,要不就通过自定义类的方式来解决这一问题。在万念俱灰的情况下,我不得不静下心来认真的研究一个适用于fastjosn的解决方案。
首先,我先构造了一个javaBean的类,名为DTO.class,类中只有一个私有属性name,针对成员属性name,分别建立了相应的get()方法和set()方法。在建立了一个测试类test.class。在test中建立一个DTO的实例dto,调用set()方法给name赋值为SereneLeong。再建立一个JSONObject的实例json,调用JSONObject的put()方法,把dto推入json,对应键值为dto。从控制台输出后我们可以得到{"dto":[{"name":"SereneLeong"}]}。可以看出json字符串{"dto":[{"name":"SereneLeong"}]}实际上可以转化为JSONObject的对象
之前在浏览网上的一些帖子的时候,我发现可以将[{"name":"SereneLeong"}]这种形式的json字符串转化为JSONArray的对象,这里就不再赘述了。这时,我想要是可以将前面的{"dto":一脚蹿走世界就清静了。其实,结合上一段的叙述,我们知道可以将json字符串{"dto":[{"name":"SereneLeong"}]}转为JSONObject对象。这是[{"name":"SereneLeong"}]相当于是JSONObject对象里的值,而dto就是对应的键。我在通过检索JSONObject的相关方法,发现可以通过JSONObject的getJSONArray()方法,根据对应的键值dto,轻松的构建一个JSONArray对象。接着,只要通过JSONArray的get()或getString()方法,取出对应Object或者String,在通过JSON的toJavaObject()或parseObject方法,完成向对应JavaBean对象的转换即可。具体代码如下:
DTO.class
test.class
输出结果
- fastjson 对于json数组字符串的处理
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- fastjson 处理json字符串嵌套结构
- 对于输入字符串数组的处理,三维数组
- 【第18篇】通过fastjson的JSON对象类处理json数组数据
- Json的处理(阿里巴巴的fastjson)
- fastJson解析复杂的json字符串
- scala 调用 Java 的 fastjson 处理 json
- Gson&FastJson解析异常Json的处理
- d3对于数组的处理
- 对于字符串处理的心得
- NSCharacterSet 对于字符串的处理
- matlab对于字符串的处理
- win8.1 无法安装 net framework3.5 问题
- struts开发的步骤
- 「彩」fontcolor() //使用指定的颜色来显示字符串 20140813 ①文本处理
- Win7/Win8如何修改文件权限
- oracle中 多表查询分析
- fastjson 对于json数组字符串的处理
- 将数据写入到CSV文件
- 用vlc搭建简单流媒体服务器(UDP和TCP方式)
- Hibernate学习_006_Hibernate对象的三种状态
- JNI官方规范中文版——JNI程序设计总结
- 采用axis2方式Java客户端调用WCF服务端Web Service
- 分步注册代码
- 在win7下python的xlrd和xlwt的安装于应用
- RTSP流媒体数据传输的两种方式(TCP和UDP)