JavaSE Dom4J

简介: JavaSE Dom4J

XML 解析就是从 XML 中获取到数据,DOM 是解析思想

DOM(Document Object Model):文档对象模型,把文档的各个组成部分看做成对应的对象,把 XML 文件全部加载到内存,在内存中形成一个树形结构,再获取对应的值

Dom4J 实现:

  • Dom4J 解析器构造方法:SAXReader saxReader = new SAXReader()
  • SAXReader 常用 API:
  • public Document read(File file):Reads a Document from the given File
  • public Document read(InputStream in):Reads a Document from the given stream using SAX
  • Java Class 类 API:
  • public InputStream getResourceAsStream(String path):加载文件成为一个字节输入流返回

子元素

Element 元素的 API:

  • String getName():取元素的名称。
  • List elements():获取当前元素下的全部子元素(一级)
  • List elements(String name):获取当前元素下的指定名称的全部子元素(一级)
  • Element element(String name):获取当前元素下的指定名称的某个子元素,默认取第一个(一级)

属性

Element 元素的 API:

  • List attributes():获取元素的全部属性对象
  • Attribute attribute(String name):根据名称获取某个元素的属性对象
  • String attributeValue(String var):直接获取某个元素的某个属性名称的值

Attribute 对象的 API:

  • String getName():获取属性名称
  • String getValue():获取属性值
 public class Dom4JDemo {
     public static void main(String[] args) throws Exception {
         SAXReader saxReader = new SAXReader();
         Document document = saxReader.read(new File("Demo/src/books.xml"));
         Element root = document.getRootElement();
         // 4.获取book子元素
         Element bookEle = root.element("book");
 ​
         // 5.获取book元素的全部属性对象
         List<Attribute> attributes = bookEle.attributes();
         for (Attribute attribute : attributes) {
             System.out.println(attribute.getName()+"->"+attribute.getValue());
         }
 ​
         // 6.获取Book元素的某个属性对象
         Attribute descAttr = bookEle.attribute("desc");
         System.out.println(descAttr.getName()+"->"+descAttr.getValue());
 ​
         // 7.可以直接获取元素的属性值
         System.out.println(bookEle.attributeValue("id"));
         System.out.println(bookEle.attributeValue("desc"));
     }
 }

文本

Element:

  • String elementText(String name):可以直接获取当前元素的子元素的文本内容
  • String elementTextTrim(String name):去前后空格,直接获取当前元素的子元素的文本内容
  • String getText():直接获取当前元素的文本内容
  • String getTextTrim():去前后空格,直接获取当前元素的文本内容
目录
相关文章
|
3月前
|
JavaScript Java
JavaSE精选-JS&DOM
JavaSE精选-JS&DOM
27 1
|
3月前
|
缓存 JavaScript 前端开发
【JavaScript 技术专栏】DOM 操作全攻略:从基础到进阶
【4月更文挑战第30天】本文深入讲解JavaScript与DOM交互,涵盖DOM基础、获取/修改元素、创建/删除元素、事件处理结合及性能优化。通过学习,开发者能掌握动态改变网页内容、结构和样式的技能,实现更丰富的交互体验。文中还讨论了DOM操作在实际案例、与其他前端技术结合的应用,助你提升前端开发能力。
148 0
|
9天前
|
XML JavaScript 前端开发
JavaScript中的DOM解析器DOMParser api的讲解
`DOMParser`能将XML或HTML源码字符串解析成DOM `Document`。通过`new DOMParser()`创建实例,使用`.parseFromString(string, type)`方法进行解析,其中`string`为待解析的字符串,`type`指定解析类型如`text/html`或`text/xml`等,返回一个`Document`对象。例如,可解析包含`&lt;p&gt;666&lt;/p&gt;`的字符串并获取其文本内容`666`。
13 1
|
2月前
|
JavaScript 前端开发 UED
JavaScript基础-DOM操作:查找、创建、修改
【6月更文挑战第12天】本文介绍了DOM基础,包括查找元素(getElementById、getElementsByClassName等)、创建新节点(createElement、createTextNode)和修改节点(innerText、innerHTML、setAttribute等)。强调了易错点,如ID唯一性、性能考量和安全问题,并提供了代码示例。熟练掌握DOM操作对前端开发至关重要,但应注意性能优化,适时使用框架或库。
JavaScript基础-DOM操作:查找、创建、修改
|
2月前
|
JavaScript 前端开发 安全
【JavaScript 】DOM操作快速入门
【JavaScript 】DOM操作快速入门
29 2
|
1月前
|
JavaScript 前端开发
JavaScript 遍历DOM
JavaScript 遍历DOM
20 0
|
2月前
|
前端开发 JavaScript 程序员
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
21 0
|
2月前
|
Web App开发 移动开发 JavaScript
探索 JavaScript 宇宙:DOM与BOM的星际邂逅
探索 JavaScript 宇宙:DOM与BOM的星际邂逅
|
3月前
|
XML JavaScript 前端开发
JavaScript简介&引入方式(JavaScript基础语法、JavaScript对象、BOM、DOM、事件监听)
JavaScript简介&引入方式(JavaScript基础语法、JavaScript对象、BOM、DOM、事件监听)
30 2
|
3月前
|
前端开发 JavaScript
HTML DOM如何通过JavaScript动态改变元素的CSS样式?
【5月更文挑战第23天】HTML DOM如何通过JavaScript动态改变元素的CSS样式?
52 1