第十章:XML

第十章:XML

一,XML简介

​ XML : XML(EXtensible Markup Language)可扩展标记语言

xml的主要作用有:

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

特点:

  • XML与操作系统、编程语言的开发平台无关

  • 实现不同系统之间的数据交换

作用:

  • 数据交互
    • 配置应用程序和网站
    • Ajax基石
XML文档结构

在这里插入图片描述

​ 注意: XML声明是可选的,因此你的xml没有它就可以很好地形成。但建议使用它,以便解析器不会做出错误的假设,特别是关于所使用的编码。

XML标签

​ XML文档内容由一系列标签元素组成。

语法:

<元素名 属性名=“属性值”>元素内容</元素名>

示例:

NoKris 或者

注意:

  • 属性值用双引号包裹
  • 一个元素可以有多个属性
  • 属性值中不能直接包含<、“、&
  • 不建议使用的字符:‘、>

要使用特殊字符时可以用转义字符:&amp(&),&lt(<),&gt(>) 等;

XML属性

​ xml属性和html一样,都要有属性名=“属性值”,并且都要在标签内部。这就不再过多的讲解。

XML编写注意事项
  • XML 文档必须有切仅有一个根元素。
  • 所有XML元素都必须有结束标签
  • XML标签对大小写敏感
  • XML必须正确的嵌套
  • 同级标签以缩进对齐
  • 元素名称可以包含字母、数字或其他的字符
  • 元素名称不能以数字或者标点符号开始
  • 元素名称中不能含空格

!!!错误示例:<title><name>XML编程</title></name>

!!!错误原因:XML标签嵌套错误。

二,XML解析器

​ 上面我们提到了,xml是可以跨平台,无视操作系统交换数据的,那么我们java在拿到其他平台的xml文件,该如何解析呢?

解析器类型:

  • 非验证解析器

    检查文档格式是否良好

  • 验证解析器

    使用DTD检查文档的有效性

    DTD(Document Type Definition),文档类型定义,用来约束XML文档。例如要求xml文档的根元素必须是什么,在元素下可以包含多少个元素,每个元素必须有一个什么属性,而且还可以定义有多少个子元素,分别为...,子元素的内容必须为文本内容等

解析XML技术
  • DOM
    基于XML文档树结构的解析
    适用于多次访问的XML文档
    特点:比较消耗资源
  • SAX
    基于事件的解析
    适用于大数据量的XML文档
    特点:占用资源少,内存消耗小
  • DOM4J
    非常优秀的Java XML API
    性能优异、功能强大
    开放源代码

我们今天重点讲的是DOM4j。

三,DOM4j

​ 我们用DOM4j解析XML代码不过是对XML的CRUD(增删改查),想用DOM4j,我们需要导入dom4j的jar包,jar包可以自己搜着下载,我们只用maven导入,简单快捷。

maven:

<dependencies> <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.1</version> </dependency> </dependencies>

增:

​ 直接上代码,再分析怎么使用。

public static void main(String[] args) throws IOException {
   
        Document document = DocumentHelper.createDocument();
        Element e1 = document.addElement("aaa");
        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值