Java 理解json

Java 理解json,java,javascript,json,Java,Javascript,Json,JSON代表JavaScript对象表示法。但是为什么像php、java、c等语言也可以用json相互通信呢 我想知道的是,我说的json不仅限于js,而且作为应用程序通过网络相互通信的协议,这与XML的用途相同,对吗?是的,json也被广泛用作与XML类似的数据交换协议。 通常,一个程序(不是用JavaScript编写的)需要一个JSON库来解析和创建JSON对象(尽管你甚至可以在没有JSON库的情况下创建它们)。你的权利-这是一种轻量级的数据交换格式-更多详细信息请访问:你完全正确。数据格式

JSON代表JavaScript对象表示法。但是为什么像php、java、c等语言也可以用json相互通信呢


我想知道的是,我说的json不仅限于js,而且作为应用程序通过网络相互通信的协议,这与XML的用途相同,对吗?

是的,json也被广泛用作与XML类似的数据交换协议。
通常,一个程序(不是用JavaScript编写的)需要一个JSON库来解析和创建JSON对象(尽管你甚至可以在没有JSON库的情况下创建它们)。

你的权利-这是一种轻量级的数据交换格式-更多详细信息请访问:

你完全正确。数据格式化方式的JSON定义。它比XML更轻,因此非常适合像AJAX这样的东西,在AJAX中,您希望快速地将数据来回发送到服务器。

JSON无法处理像XML那样复杂的数据层次结构(属性、名称空间等),但另一方面,JSON的开销与XML不同(如果不需要复杂的数据结构)


由于JSON是纯文本,带有JS需要解释的特殊符号,因此在其他语言中很容易采用该协议。

JS脚本很容易解析JSON,因为它可以使用“eval”来完成,JS引擎可以在其中使用其全部功能

另一方面,从JS中生成JSON更为复杂。通常使用www.JSON.org中的JSON包,在该包中,可以使用JSON.stringify轻松序列化对象,但它是在JS中实现的,因此无法以最佳性能运行

因此,使用JS序列化JSON的复杂性与使用Java、PHP或任何其他服务器端语言时差不多

因此,在我看来,当产品/消费者之间存在不对称时,JSON最适合。例如,一个web服务器生成大量数据,这些数据被web应用程序使用。反之亦然


但是!当选择JSON作为数据格式时,它应该在两个方向上使用,而不是XMLJSON。除了使用简单的get请求检索JSON数据之外。

JSON是一种旨在帮助在JS Ajax调用中传输数据的媒体。但这并不意味着它不能用于其他事情。汽车的设计目的是帮助您从a移动到B,但是它也可以用来把自己扔到悬崖上。