关于json与java对象的转换&xml解析的小结

使用gson处理:

  1. 转为 Json 字符串
    I)、获得需要的对象
    II)、格式化为字符串

  2. 解析成 java 对象

I)、Gson 的 节点对象:
JsonElement : 所有的节点 都是 JsonElement 对象.
JsonPrimitive : 基本的 数据类型的 节点 对象, JsonElement 的子类.
JsonNull : 代表 空节点 对象,即 有 key,value 为空,JsonElement 的子类.
JsonObject : 对象 数据类型的 节点 对象, JsonElement 的 子类.
JsonArray : 数组 数据类型的 节点 对象, JsonElement 的 子类.

II)、JsonElement 的取值:
JsonPrimitive : value 的 取值对应 java 的
int,double,float,long,short,boolean,char,byte,String,BigDecimal,BigI nteger,Number
JsonObject : value 的取值对应 java 的 Object 对象.
JsonArray : value 的取值对应 java 的 List 及其子类对象.

III)、解析对象

/*
Junit单元测试

  • 1、在src目录下右键,选择"other"
  • 2、在文本框搜索"test",选择"Junit Test Case"
  • 3、在弹出的窗口设置包名和类名,点击"确定"
  • 4、弹出窗口询问是否添加JUunit的相关类库,选择"是"
  • 5、在单元测试中,单元测试方法上会有注解@Test,表示当前方式是测试用例
  • 如何执行测试用例:
  • 1、选择要测试的用例的方法名,右键选择"Run As"或"Debug As",选择"JUnit Test"
  •  注:如果没有选择指定方法执行,会执行当前测试用例类中所有的测试方法
    
  • 2、执行结果有两种:
  •  暗红色:表示执行失败
    
  •  绿色:表示执行成功
    
  • 注意事项:
  •  1、单元测试类不能有父类
    
  •  2、单元测试方法不能是静态方法
    
  •  3、单元测试方法没有参数
    
  •  4、单元测试方法返回值是void
    

*/

使用 fastjson 处理:

  1. 转为 json 字符串
    String jsonString = JSON.toJSONString(object);
  2. 解析成对象
    1). JavaBean : Person person = JSON.parseObject(jsonString, Person.class);
    2). List : List listPerson =JSON.parseArray(jsonString, Person.class);
    3). List:List listString = JSON.parseArray(jsonString, String.class);
    4). List List listMap =JSON.parseObject(jsonString, new
    TypeReference<List
    >(){});

格式良好的 xml需要:
1、语法规范:
1)、必须有 XML 文档声明:
2)、必须有且仅有一个根元素
3)、严格区分大小写
4)、属性值用引号(双引号或单引号) :等号分开的名称-值对;在一个元素上,相同的属
性只能出现一次
5)、标记成对;
6)、空标记关闭;
7)、元素正确嵌套。

2、元素命名规则

3、实体
1)内置的 5 种实体:
实体 符号
< <
> >
& &
" "
’ ’
2)自定义实体

<!ENTITY 实体名 "实体内容">

]>

4、文档类型声明

XML 解析:
1、DOM 解析:
① 建 立 DocumentBuilderFactory : DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
②建立 DocumentBuilder: DocumentBuilder builder = factory.newDocumentBuilder();
③建立 Document : Document doc = builder.parse(“要解析的文件路径”);
④建立 NodeList : NodeList nl = doc.getElementsByTagName(“读取节点”);
⑤进行 XML 信息读取

2、SAX 解析

3、Dom4J解析

  • 1、得到要解析的文件对象
  • 2、得到解析器
  • 3、通过解析器将文件对象转换成Document对象
  • 4、得到当前文档对象的根节点
  • 5、得到 根节点的所有子节点,返回迭代器
  • 6、遍历,得到每一个子节点的名称和值

4、JDOM 解析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值