为啥json在不同的应用环境中解析不同?
Posted
技术标签:
【中文标题】为啥json在不同的应用环境中解析不同?【英文标题】:Why json is parsed diffrently on diffrent application environments?为什么json在不同的应用环境中解析不同? 【发布时间】:2018-11-08 21:38:01 【问题描述】:我在 java 中有 json 对象,我使用 obj.toString() 返回到浏览器。 response.setContentType("application/json")
正在将返回类型设置为 json。
示例:
obj =
name: "pp",
age: 24
tomcat 上的应用程序:收到的响应是
obj =
name: "pp",
age: 24
但在 glassfish 上的应用:收到的响应是
obj =
name: "pp",
age: "24"
请注意,年龄被视为导致很多问题的字符串。 上面只是一个虚拟 json,我有一个巨大的 json,里面有很多键和值,大多数值是整数或浮点数。那么我怎样才能得到保留数据类型值的json。
【问题讨论】:
How Can i get json in which has data type of values are preserved
- 不要使用 glassfish?
您使用哪个库进行 json 化?
【参考方案1】:
在应用程序中,因为它是非常旧的应用程序,最初我们使用 xml 响应。在升级系统时,我们选择了 json 响应。为了减少代码更改,我们只是使用 json.jar 中的函数将 xml 转换为 json。
JSONObject xmlJSONObj = XML.toJSONObject(returnStrXML);
将 xml 转换为 json 时出现问题。在我的环境中,我有不同的 jar,它巧妙地将 xml 转换为 json 以保留其数据类型。而 json.jar 默认将所有值转换为字符串。换罐子解决了这个问题。
【讨论】:
以上是关于为啥json在不同的应用环境中解析不同?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 std::istringstream 在三元 (?:) 运算符中的解析方式似乎与 std::ifstream 不同?