美文网首页
XML和Json

XML和Json

作者: 3d9211e6a2b5 | 来源:发表于2021-02-20 11:53 被阅读0次

XML

简介

可扩展标记语言(eXtensible Markup Language)。

特性:

1. xml具有平台无关性, 是一门独立的标记语言.

2. xml具有自我描述性

XML语法格式

1. XML文档声明

<?xml version="1.0" encoding="UTF-8"?>

2. 标记( 元素/ 标签/ 节点)

标记名称: 自定义名称,必须遵循以下命名规则:

1.名称可以含字母、数字以及其他的字符

2.名称不能以数字或者标点符号开始

3.名称不能以字符“xml”(或者XML、Xml)开始

4.名称不能包含空格,不能包含冒号(:)

5.名称区分大小写

1. 一个XML文档中, 必须有且且仅允许有一个根标记.

正例:

<names>

<name>张三</name>

<name>李四</name>

</names>

反例:

<name>李四</name>

<name>麻子</name>

2. 标记名称允许重复

3. 标记除了开始和结束, 还有属性.

格式:

可以包含0-n个属性, 每一个属性是一个键值对!

属性名不允许重复, 键与值之间使用等号连接, 多个属性之间使用空格分割.

属性值必须被引号引住.

案例:

<persons>

<person id="10001" groupid="1">

<name>李四</name>

<age>18</age>

</person>

<person id="10002" groupid="1">

<name>李四</name>

<age>20</age>

</person>

</persons>

4. 注释

注释不能写在文档文档声明前

注释不能嵌套注释

格式:

注释开始: <!--

注释结束: -->

CDATA

CDATA 是不应该由XML 解析器解析的文本数据。

像"<" 和"&" 字符在XML 元素中都是非法的。

CDATA 部分中的所有内容都会被解析器忽略。

CDATA 部分由"<![CDATA[" 开始,由"]]>" 结束:

<?xml version="1.0" encoding="UTF-8"?>

<books>

        <book id="1001">

金苹果</name>

锄禾日当午</info>

        </book>

</books>

JSON:

{

"name":"金苹果",

"info":"种苹果"

}

键与值之间使用冒号连接, 多个键值对之间使用逗号分隔.

键值对的键应使用引号引住

键值对的值, 可以是JS中的任意类型的数据

数组格式:

在JSON格式中可以与对象互相嵌套

[元素1,元素2...]

{

"name":"伟杰老师",

"age":18,

"pengyou":["张三","李四","王二","麻子",{

"name":"野马老师",

"info":"像匹野马一样狂奔在技术钻研的道路上"

}],

"heihei":{

"name":"大长刀",

"length":"40m"

}

}

Gson

将对象转换为JSON字符串

转换JSON字符串的步骤:

1. 引入JAR包

2. 在需要转换JSON字符串的位置编写如下代码即可:

String json = new Gson().toJSON(要转换的对象);

案例:

Book b = BookDao.find();

String json = new Gson().toJson(b);

System.out.println(json);

将JSON字符串转换为对象

1. 引入JAR包

2. 在需要转换Java对象的位置, 编写如下代码:

对象= new Gson().fromJson(JSON字符串,对象类型.class);

案例:

String json = "{\"id\":1,\"name\":\"金苹果\",\"author\":\"李伟杰

\",\"info\":\"嘿嘿嘿嘿嘿嘿\",\"price\":198.0}";

Book book = new Gson().fromJson(json, Book.class);

System.out.println(book);

FastJson

将对象转换为JSON字符串

转换JSON字符串的步骤:

1. 引入JAR包

2. 在需要转换JSON字符串的位置编写如下代码即可:

String json=JSON.toJSONString(要转换的对象);

案例:

Book b = BookDao.find();

String json=JSON.toJSONString(b);

System.out.println(json);

将JSON字符串转换为对象

1. 引入JAR包

2. 在需要转换Java对象的位置, 编写如下代码:

类型对象名=JSON.parseObject(JSON字符串, 类型.class);

List<类型> list=JSON.parseArray(JSON字符串,类型.class);

案例:

String json = "{\"id\":1,\"name\":\"金苹果\",\"author\":\"李伟杰

\",\"info\":\"嘿嘿嘿嘿嘿嘿\",\"price\":198.0}";

Book book = JSON.parseObject(json, Book.class);

System.out.println(book);

Gson g = new Gson();

//2.转换

Book b = new Book( id: "100",name: "金苹果",info: "种植苹果真辛苦");

String s = g.toJson(b);

System.out.println(s);

{"id" : "100", "name" :"金苹果", "info":"种植苹果真辛苦""}

//1.创建Gson对象Gson g = new Gson();

//2.转换:{ "id" : "100","name " : "金苹果", "info" : "种植苹果真辛苦"}

HashHap data = g.fromJson( json:"{\"id\" :\"100\",\ "name\":\"金苹果\",\"info\":\"种樟苹果真辛苦\"}",HashMap.class);

System.out.println(data.get("id"));

}

//1.创建Gson对象

Gson g = new Gson();

//2.一转换:{"id" : "10" ,"name" :"金苹果"," info" :"种植苹果真辛苦", "page":["锄禾日当午""汗滴禾下土","嘿嘿嘿嘿嘿"]J}

HashMap data = g.fromJson("{\"id\" :\"100\",\"name\":\"金苹果\",\"info\":\"种樟苹果真辛苦\", \"page\":[\"锄禾日当午\",\"汗滴禾下土\",\"嘿嘿嘿嘿嘿\"]}",HashMap.class);

List page = (List) data.get("page");

System.out.println(page.get(1));

//1.转换:["一二三","二三四","三四五"]

List<String> strings = JSON.parseArray( text:"[ \"一二三",\"二三四\",\"三四五\"]",String.class);

System.out.println(strings.get(1));

相关文章

  • 数据格式

    XML和JSON数据格式 json数据格式 {"":"", "":"", "":""} json xml对比 1....

  • 菜鸟笔记(五) - 常见传输格式解析

    本文将介绍使用Java解析json和生成json,解析xml以及生成xml的一些方法。 前提摘要:JSON和XML...

  • XML JSON

    XML和JSON的优缺点对比 (1).可读性方面。 JSON和XML的数据可读性基本相同,JSON和XML的可读性...

  • JSON和XML之间有哪些不同

    JSON和XML之间的区别是什么?下面本篇文章就来给大家比较一下JSON和XML,介绍JSON和XML之间的区别,...

  • iOS面试无果,是因为这些题

    每日瑜伽面试题(电话面试) 1. json 和 xml 哪个好,为什么? XML和JSON优缺点 (1).XML...

  • JSON 和 XML

    XML扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有...

  • XML和JSON

    XML XML:可扩展标记语言。由标准通用标记语言(SGML)中简化修改出的。用于传送及携带数据信息,与说明数据是...

  • JSON和XML

    定义 JSON定义 JSON(JavaScript Object Notation)一种轻量级的数据交换格式,具有...

  • JSON和XML

    简介 JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格...

  • JSON和XML

    JSON是一种轻量级的数据格式,一般用于数据交互服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件...

网友评论

      本文标题:XML和Json

      本文链接:https://www.haomeiwen.com/subject/aamtfltx.html