博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struts2操作json成字符串格式错误被转义及其前台访问json对象的方法
阅读量:5977 次
发布时间:2019-06-20

本文共 938 字,大约阅读时间需要 3 分钟。

这个问题确实纠结了我几天,是在是烦。网上也是参考了好几位大师的说法。都是不了了之。

这里记下这个问题,以备以后的参考。

我在struts2后台返回的是这样的json字符串:

"[{\"b\":\"best\",\"a\":\"judd\"}]"

里面是被转义的,这样的转义是没有什么意义的,因为这样转换的其实不是json字符串。他是不符合json字符串的。

标准的json字符串的样式,我这里就不多写了。大家相信也知道的。

所以以上的转义也是无效的,不要纠结。上面的转义成的字符串也是正确的。

关键的是,我们在struts2中如果需要返回一个json的字符串,我想到了1个的操作手法》

1,使用jsonobject.fromobject(obj),这里的obj只能是map类型或者是bean类型的。

所以如果需要返回一个你需要的json 的字符串,需要写一个bean,里面放入你需要返回的字符串对象,可以是list类型的,当然。

或者是自己做一个map即可。

其他的方法现在还没有想到。其他的方法详细产生的也不是标准的json格式的字符串。后面也无法使用的。

 

jsonarray.fromobject(obj).tostring,这个类主要用于转换的是list类型的。但是转换后的json字符串同样也是不可以使用的,因为不标准吧。

**********************************************

前台访问json对象的方法:

在服务器那边,返回一个JSON格式的字符串,如——a、"{\"name\":\"dd\",\"age\":\"12\"}";b、"[{\"name\":\"dd\",\"age\":\"12\"},{\"name\":\"kk\",\"age\":\"20\"}]";var message = eval('(' + 返回的json格式参数+ ')');  如果你的JSON格式是如上面a那种,那可以这样获取数据——message.name、message.age如果是b那种,可以这样——message[0].name、message[1].ageeval()函数用于解析json数据,你可以百度查一下具体用法。。。。

转载地址:http://qpsox.baihongyu.com/

你可能感兴趣的文章
Object C学习笔记22-#define 用法
查看>>
android-Service和Thread的区别
查看>>
将web项目deploy到tomcat的方法
查看>>
MongoDB与Mysql常用命令解释
查看>>
关于C#泛型列表List<T>的基本用法总结
查看>>
FineUI(开源版)v6.0中FState服务器端验证的实现原理
查看>>
pt-online-schema-change中update触发器的bug
查看>>
PHP curl报错“Problem (2) in the Chunked-Encoded data”解决方案
查看>>
Pointer arithmetic for void pointer in C
查看>>
【java】 linux下利用nohup后台运行jar文件包程序
查看>>
Java Lambda表达式初探
查看>>
前端进阶之路:初涉Less
查看>>
C++ 用RGB 三种颜色绘图
查看>>
EntityFramework Core 1.1是如何创建DbContext实例的呢?
查看>>
JDK1.7安装配置环境变量+图文说明Jmeter安装
查看>>
Ubuntu下安装和使用zookeeper和kafka
查看>>
Spring可扩展Schema标签
查看>>
c++ STL unique , unique_copy函数
查看>>
函数模板的使用说明
查看>>
http://miicaa.yopwork.com/help/overall/
查看>>