XML总结
结尾总结:总结要点,强化主要信息 #生活技巧# #职场沟通技巧# #书面表达#
1 解析XML目的
获取节点名、节点值、属性名、属性值
2 获取xml文件内容的四种解析方式
DOM SAX DOM4J JDOM
DOM、SAX :java 官方方式,不需要下载jar包
DOM4J、JDOM :第三方,需要网上下载jar包
3 DOM使用步骤
3.1 准备工作
1、创建一个DocumentBuilderFactory的对象
DocumentBuilderFactory dbf = DocumnetBuilderFactory.instance();
2、创建一个DocumentBuilder的对象
DocumentBuilder db = dbf.newDocumentBuilder();
3、通过DocumentBuilder对象的parse方法加载xml文件到当前项目
Document document = db.parse("*.xml");
其中2、3两步需要try...catch异常。
3.2 使用Dom解析xml文件的属性节点
在不知道节点属性的个数和属性名时:
1、通过document.getElementByTagName("标签名")获得所有标签名的节点,得到一个NodeList集合
2、通过NodeList.getLength()获得集合长度,遍历集合
3、Node node = NodeList.item(index)获得里面的节点
4、通过NamedNodeMap attrs = node.getAttributes()获取所有属性集合
5、通过attrs.getLength()遍历集合,Node attr = atrrs.item(index)
6、attr.getNodeName()获得属性名,attr.getNodeValue()获取属性值
前提已经知道book节点有且只有1个id属性,将book节点进行强制类型转换,转换成element类型。
1、通过document.getElementByTagName("标签名")获得所有标签名的节点,得到一个NodeList集合
2、通过NodeList.getLength()获得集合长度,遍历集合
3、element book=(element)bookList.item(i);//强制转换为element类型
4、string attrValue = book.getAttribute("id");
ChildNodes.item(i).getFirstChild().getNOdeValue()和 ChildNodes.item(i).getTextContent()的区别 子节点中还包含其他子节点时,后者可以把子节点的值都显示出来。
getTextContent()获取节点中的text内容(即节点值).
getNodeType().............有text,element,attr三个
而Element如果要获取值,必须读取它的子节点,<name>content</name>认为content是namae的子节点;
两种方法:
getFirstChild().getNodeName();(获取子节点再获取值)
getTextContent();(获取content方法)
4 常用节点类型
Element(NodeType:1;NodeName:元素名称;NodeValue:null)
Attr(NodeType:2;NodeName:属性名称;NodeValue:属性值)
Text(NodeType:3;NodeName:#text;NodeValue:节点内容)
1.getFirstChild.getNodeValue():该节点下第一子节点的值
2.getTextContent() :该节点下包括后代节点里的文本内容
5 小结
基础方法:DOM(平台无关的官方解析方式)、SAX(基于事件驱动的解析方式)
扩展方法:JDOM、DOM4J(在基础的方法上扩展出的,只有在java中能够使用的解析方法)
DOM:一次性将整个xml文件加载到内存中,形成DOM树
优点:形成了树结构,直观好理解,代码更容易编写
解析过程中树结构保留在内存中,方便修改
缺点:当xml文件较大时,对内存消耗比较大,容易影响解析性能并造成内存溢出
SAX:逐条语句判断解析
优点:采用事件驱动模式,对内存消耗比较小
适用于只需要处理xml中数据时
缺点:不易编码
很难同时访问同一个xml中的多处不同数据
JDOM:仅使用具体类而不使用接口
API大量使用了Collections类
DOM4J:JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能
DOM4J使用接口和抽象基本类方法,是一个优秀的Java XML API
具有性能优异、灵活性好、功能强大和极端易使用的特点
是一个开放源代码的软件
转载于:https://www.cnblogs.com/helloIT/p/5191744.html
总结
以上是生活随笔为你收集整理的XML总结的全部内容,希望文章能够帮你解决所遇到的问题。
如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。
网址:XML总结 https://www.yuejiaxmz.com/news/view/1250048
相关内容
mybatis resultmap映射结果集(xml映射配置一)复杂的xml转化为java实体
mybatis中xml文件的核心
android安卓涵盖大多基础xml文件使用的介绍
新一年多总结多练习
10个生活黑客总结的厨艺妙招get起来!
学霸总结的100种学习方法, 初高中六年都适用
Android6.0到9.0的适配爬坑总结
网络安全常见十大漏洞总结(原理、危害、防御)
100种学习方法,总有几条适合你!