携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第3天,点击查看活动详情 >>
问题描述:
开发中不难遇到 通过SaopApi进行数据传输的接口,这种接口就需要通过解析Xml结构的进行数据处理。
-
先了解一下 Xml是个什么东西?
- XML 被设计用来传输和存储数据;
- HTML 被设计用来显示数据;
- XML 指可扩展标记语言(eXtensible Markup Language);
- 可扩展标记语言(英语:Extensible Markup Language,简称:XML)是一种标记语言,是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。
-
在很多时候我们都是通过 Xml进行数据传输 ,又有什么好处呢 ?
- 其实跟json比起来 ,很多人已经把xml给忘记了,觉得是一种古老的做法;
- 首先一点是 xml数据传输 会使得处理起来更加方便一些;
- xml传输可以使地数据在不同平台中方便数据进行传输。
-
在什么时候会用Xml呢 ?
- 在Java编码中 用到Xml 地时候 当然就是 传输某一对象,当然在一些相关配置中用xml较多;
- 当然在键值对的时候还是不建议用Xml进行 传输,Json更方便一些。
-
Dom4j是什么?
- dom4j是一个Java的XML API,是jdom更高一级的替代品,用来读写XML文件的;
- dom4j可以是开发者解析XMLAPI 以及XML文档更方便 ,更容易上手;
简单附上 我的一点点核心代码:
File file = new File("\ss\s.xml")
将文件通过SAXReader读成Document格式的对象:
SAXReader reader = new SAXReader();
Document doc = reader.read(file);
获取到该dom的root节点:Element root = doc.getRootElement();
获取对象节点:Element award = foo.element("Award");
获取对象某一属性值:Element CardNumber = account.elementText("CardNumber");
简简单单几行代码就将XML格式地文件转换成了我们想要的对象,相对其他的一些还是比较好用.
附上我这边使用到的maven依赖:
<dependency> <groupId>org.dom4j</groupId> <artifactId>dom4j</artifactId> <version>2.1.3</version> </dependency>
总结:
Dom4j使得我们更加方便对XML数据的操作,还是比较建议在后边的开发过程中进行使用 ,共同交流。
欢迎各界精英进行补充,若有不当,欢迎指教 !
让我们一起迎接明天的一缕缕阳光吧 !
下期间,朋友们 !