java语言中的XML解析

一、XML的基础概念

        XML(eXtensible Markup Language,可扩展标记语言) 是一种用于存储和传输数据的标记语言,由万维网联盟(W3C)于 1998 年发布。它的设计初衷是分离数据内容与展示形式,并实现跨平台的数据交换,其核心思想源于 SGML(标准通用标记语言),但语法更为简洁。

二、XML文件的特点

        1、平台无关性:不依赖特定的操作系统或软件,可在不同环境中解析和使用

        2、可扩展性:用户可自定义标签和结构,无需遵循固定标准

        3、结构化数据存储:采用树形层级结构,便于数据的组织和解析

三、XML语言的语法规则

        1、第一行通常为 XML 声明,指定版本和编码(常见为 UTF-8)。

        2、文档结构方面,必须有一个根节点包裹所有内容

        3、所有标签均为闭合标签,且标签之间不能交叉嵌套

        4、标签区分大小写,如<Title>和<title>是不同的标签

        示例:定义一个XML文件

        

四、XML文件的解析方式

        1、DOM解析:将整个XML文件加到内存中,构建树形结构,便于随机访问节点,但消耗内存较高

        2、XML解析库:如java语言中的DOM4J

        3、SAX解析:流式解析,按顺序读取文档,适合处理大文件,但无法反向访问节点。

示例:使用DOM4J解析XML文件(解析上述XML文件)

        1、单个路径解析

        运行结果:

        

        2、若需要解析所有stu节点中的信息,首先通过selectNodes()方法获取所有stu节点,再使用循环遍历所有节点

        运行结果:

        

五、场景案例:构建XML文件,存储连接和操作数据库的信息,java通过解析XML文件,按照需求就可以执行不同的数据库操作

        1、数据库中准备两张待操作的表

                表:t_stu

                

                表:t_goods

        ​​​​​​​        

        2、设计XML文件,存储的信息有连接和操作数据库

        

        3、设计Info类,存储解析出来的连接数据库信息

        

        4、构建类ParseXML,用于解析XML文件,使用hashtable存储数据库信息

                解析连接数据库节点

                解析sql节点

                为该类中的成员创建set,get方法

        5、设计类Stu,存储表t_stu的信息

        6、设计类Goods,存储t_goods表中信息

        

        7、构建类DB,执行数据库操作

        运行结果:

        


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值