JavaWeb_xml学习笔记

xml学习笔记

xml解析

  • 步骤:
    1.读取xml文件,获取document对象。
    2.通过document对象获取根元素。
    3.通根元素获取标签对象。
    4.通过标签对象,获取相应的类。
    下面是代码块是一个xml文件 (文件名:Computers.xml):
<?xml version="1.0" encoding="utf-8" ?>
<Computers>
    <Cumputer>
    <type>Apple Macbook Pro</type   
    <size>13.3英寸</size>  
    <price>9999.9元</price>
</Cumputer>
    <Cumputer>
        <type>Apple iPad Pro11</type>
        <size>11英寸</size>
        <price>7029</price>
    </Cumputer>
</Computers>

接着写一个单元测试

package com.jiexi;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.junit.Test;

import java.util.List;

public class Testone {
    @Test
    public  void test1() throws DocumentException {
        //1.读取Computer.xml获得取document对象
        SAXReader reader=new SAXReader();

        Document document=reader.read("src/Computer.xml");
      //Computer.xml文件在src路径下
        //2.通过document对象获得根元素
        Element rootElement=document.getRootElement();

        System.out.println(rootElement);
        //3.通过根元素获取标签对象
        List<Element> computers=rootElement.elements("Computer");
        //4.通过标签对象,获取对应的类

        for (Element computer: computers
             ) {
            Element st=computer.element("size");
            //asxml方法把标签对象,转换为字符串。
            System.out.println(st.asXML());
            String sq=computer.elementText("price");
            System.out.println(sq);
        }
    }
}

输出结果:
org.dom4j.tree.DefaultElement@41a4555e [Element: <Computers attributes: []/>]
<size>13.3英寸</size>
9999.9元
<size>11英寸</size>
7029元

  1. SAXReader可以通过多种方式读取xml数据,并返回Document格式的对象。
  1. 获得Document对象后,通过getRootElement()方法获得根元素,返回的是Element对象

3.获得根元素后,便可以一层一层的去获取他的子元素信息。如果知道子元素的标签名称,便可以直接调用element("name")方法获取该子元素。如果不知道子元素的名称,或者想直接获取该元素下的全部子元素,可以调用elements()方法获取一个包括全部元素的list,然后进行下一步的处理。

4.最后遍历输出解析的结果。

肝完,大家的支持就是我坚持下去的动力,如果这文章对你有帮助的话,感谢你点的赞 !

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。