json为啥解析为javabean

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了json为啥解析为javabean相关的知识,希望对你有一定的参考价值。

参考技术A FastJson效率最高,是阿里巴巴开源 的Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:
速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson;
功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE 5.0以上版本;支持android
参考技术B java的本质是面向对象思想,转化为bean有利于数据的存储、复制,以及在可用于其他的地方,传送给其他的类中使用。这样解决问题更简单、思路清晰。本回答被提问者采纳

为啥json在不同的应用环境中解析不同?

【中文标题】为啥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为啥解析为javabean的主要内容,如果未能解决你的问题,请参考以下文章

Gson解析复杂JSON字符串的两种方式

为啥json在不同的应用环境中解析不同?

为啥 json-parser 解析错误我的 json

为啥 Javascript 不能从字符串文字中解析这个 JSON 数组?

为啥 Javascript 不能从字符串文字中解析这个 JSON 数组?

为啥 json.loads 比 ast.literal_eval 更适合解析 JSON?