XML 可扩展标记性语言

XML 简介

xml 的作用

  1. 用来保存数据,而且这些数据具有自我描述性
  2. 它还可以做为项目或者模块的配置文件
  3. 还可以做为网络传输数据的格式(现在 JSON 为主)

xml 语法

  1. 文档声明。
  2. 元素(标签)
  3. xml 属性
  4. xml 注释
  5. 文本区域(CDATA 区)
  • xml 声明
    <?xml version='1.0' encoding='UTF-8'?>
    

    version 是版本号;encoding 是 xml 的文件编码;standalone=“yes/no” 表示这个 xml 文件是否是独立的 xml 文件

  • xml 注释
    <!-- html 注释 -->
    
  • 元素(标签):元素是指从开始标签到结束标签的内容
    <title>java 编程思想</title>
    
    • 元素命名规则:名称可以含字母、数字以及其他的字符;名称不能以数字或者标点符号开始;名称不能包含空格
    • 单标签和双标签
    <!--单标签格式:--> 
    <标签名 属性=”值” 属性=”值” ...... /> 
    <!--双标签格式:-->
    <标签名 属性=”值” 属性=”值” ......>文本数据或子标签</标签名>
    
  • xml 属性:属性可以提供元素的额外信息。一个标签上可以书写多个属性。每个属性的值必须使用引号引起来。
    <person sex="female"/>
    

语法规则

  • 所有 XML 元素都须有关闭标签(也就是闭合)
  • XML 标签对大小写敏感
  • XML 必须正确地嵌套
  • XML 文档必须有根元素
  • XML 的属性值须加引号
  • XML 中的特殊字符(比如<>),需要有特殊表示。
  • 文本区域(CDATA 区):CDATA 语法可以告诉 xml 解析器,我 CDATA 里的文本内容,只是纯文本,不需要 xml 语法解析
    <![CDATA[ 这里可以把你输入的字符原样显示,不会解析 xml ]]>
    

XML解析技术

dom4j解析技术

  • dom4j 操作步骤
    1. 先加载 xml 文件创建 Document 对象
    2. 通过 Document 对象拿到根元素对象
    3. 通过根元素.elelemts(标签名); 可以返回一个集合,这个集合里放着。所有你指定的标签名的元素对象
    4. 找到你想要修改、删除的子元素,进行相应在的操作
    5. 保存到硬盘上
读取xml文件
public class Dom4JTest {
  @Test
  public void getDocument() throws DocumentException {
    // 要创建一个 Document 对象,需要我们先创建一个 SAXReader 对象
    SAXReader saxReader = new SAXReader();
    // 这个对象用于读取 xml 文件,然后返回一个 Document。
    Document document = saxReader.read("E:/Java/java-web/xml/src/main/resources/books.xml");
    // 打印到控制台,看看是否创建成功
    //System.out.println(document);
    Element root = document.getRootElement();
    List<Element> books = root.elements("book");
    for (Element book : books) {
      Element name = book.element("name");
      Element price = book.element("price");
      Element author = book.element("author");
      System.out.println("书名:" + name.getText() + ", 价格:" + price.getText() + ", 作者:" + author.getText());
    }
  }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值