Java Web之JSP操作XML(XML的文档结构 语法和注释、dom4j的下载与配置 应用dom4j创建、解析和修改XML)

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: Java Web之JSP操作XML(XML的文档结构 语法和注释、dom4j的下载与配置 应用dom4j创建、解析和修改XML)

前言


XML是eXtensible Markup Language(可扩展标记语言)的缩写,是SGML(标准通用化标记语言)的一个子集 用于提供数据描述格式 适用于不同应用程序间的数据交换,而且这种交换不以预先定义的一组数据结构作为前提,增强了可扩展性。


一、XML文档结构

1666443388413.jpg

一个基本的XML文档通常由序言和文档元素两部分组成


1:序言


可以包括XML声明 处理指令和注释 XML文档的第一行通常是XML声明 语法如下

<? xml version="version" encoding="value" standalone="value"?>


standalone 用于指定XML文档是否和另一个外部文档嵌套使用  yes则为一个独立的文档


2:文档元素


XML文档中的元素是以树形分层结构排列的 一个元素可以嵌套在另一个元素中,XML文档中有且只有一个顶层元素 称为文档元素或根元素

<tagname>content</tagname>


XML语法要求


1:XML文档必须有一个顶层元素 其他元素必须嵌入在顶层元素中


2:元素嵌套要正确 不能重叠或者跨越


3:每一个元素必须同时拥有起始标记和结束标记


4:元素类型名要完全匹配


5:XML元素类型名区分大小写


6:元素类型名称不可以以 -开头 也不可以包含空格和:


7:元素可以包含属性 但属性值必须用单引号或者双引号括起来


为XML文档中 的元素定义属性

<info id="1">


XML的注释


注释以<!--开始  以字符串-->结束


处理字符数据


在XML文档中 有些字符会被XML解析器当作标记进行处理 如果希望把这些字符作为普通字符处理,就需要使用实体引用或CDATA段


< 实体引用为&1t  >实体引用为&gt &实体引用为&amp '实体引用为&apos "实体引用为&quot

<?xml version="1.0" encoding="GBK"?>
<placard version="2.0">
<info id="1">
 <title>重要通知</title>
 <content>&amp;nbsp;&amp;nbsp;明天下午三点</content>
 <pubDate>2022-10-17</pubDate>
</info>
</placard>


使用CDATA段


CDATA段是一种用来包含文本的方法 其内部的所有内容都会被XML解析器当作普通文本  所以任何符号都不会被认为是标识符 语法如下

<![CDATA[文本内容]]>


二、dom4j简介


dom4j是sourceforge.net上的一个Java开源项目 主要用于操作XML文档 如 创建XML文档和解析XML文档 dom4j应用于Java平台 采用了Java集合框架并完全支持DOM SAX JAXP是一种适合Java程序员使用的Java XML解析器


dom4j的下载与配置


1:进入网址dom4j


2:点击Download下载最新版本的dom4j


3:将文件解压后  将dom4j.1.6.1.jar文件和lib文件夹下的jaxen-1.1-beta-6.jar文件配置到构建路径下中  或者将这两个文件直接复制到项目的lib文件夹中


三、创建XML文档


dom4j组件的一个最重要的功能就是创建XML文档 通过该组件可以很方便的创建XML文档


1:创建XML文档对象


代码如下

Document document=DocumentHelper.createDocument();


2:创建根节点


为XML文档创建根节点 首先需要创建一个普通节点  然后调用方法将该节点设置为根节点


创建一个普通节点语法如下

public static Element createElement(String name)


设置为根节点

public void setRootElement(Element rootElement)


3:添加注释

public Element addComment(String comment)
 placard.addComment("芝士根节点");


4:添加属性

public Element addAttribute(String name,String value)


5:设置节点的内容

public void setText(String text)


6:设置编码

public void setEncoding(String encoding)


7:设置输出格式

public static OutputFormat createPrettyPrint()


输出XML文档


1:未设置输出格式

XMLWriter writer=new XMLWriter(new FileWriter(fileURL));
writer.write(document);
writer.close();


2:已经设置了输出格式或编码集

XMLWriter writer=new XMLWriter(new FileWriter(fileURL),format);
writer.write(document);
writer.close();


四、解析XML文档


构建XML文档对象

SAXReader reader=new SAXReader();
Document document=reader.read(new File(fileURL));


获取根节点

Element placard=document.getRootElement();


获取子节点


1:element方法

用于获取指定名称的第一个节点

public Element element(String name)


2:elements方法

用于获取指定名称的全部节点

public List elements(String name)


五、修改XML文档


1:修改节点


在修改XML文档的节点前 首先需要查询到该节点


查询符合条件的唯一节点

public Node selectSingleNode(String xpathExpression)


查询符合指定条件的节点列表

public List selectNodes(String xpathExpression)


获取到要修改的节点后 就可以应用前面的方法对该节点进行修改操作


2:删除节点


同理首先查询你要删除的节点 方法同上


然后用remove方法删除该节点

public boolean remove(Element element)

1666443769043.jpg

1666443780311.jpg

相关文章
|
25天前
|
JavaScript 前端开发 Go
CSS 与 JS 对 DOM 解析和渲染的影响
【10月更文挑战第16天】CSS 和 JS 会在一定程度上影响 DOM 解析和渲染,了解它们之间的相互作用以及采取适当的优化措施是非常重要的。通过合理的布局和加载策略,可以提高网页的性能和用户体验,确保页面能够快速、流畅地呈现给用户。在实际开发中,要根据具体情况进行权衡和调整,以达到最佳的效果。
|
8天前
|
Java Maven Spring
Java Web 应用中,资源文件的位置和加载方式
在Java Web应用中,资源文件如配置文件、静态文件等通常放置在特定目录下,如WEB-INF或classes。通过类加载器或Servlet上下文路径可实现资源的加载与访问。正确管理资源位置与加载方式对应用的稳定性和可维护性至关重要。
|
10天前
|
存储 人工智能 自然语言处理
高效档案管理案例介绍:文档内容批量结构化解决方案解析
档案文件内容丰富多样,传统人工管理耗时低效。思通数科AI平台通过自动布局分析、段落与标题检测、表格结构识别、嵌套内容还原及元数据生成等功能,实现档案的高精度分块处理和结构化存储,大幅提升管理和检索效率。某历史档案馆通过该平台完成了500万页档案的数字化,信息检索效率提升60%。
|
10天前
|
存储 安全 搜索推荐
理解Session和Cookie:Java Web开发中的用户状态管理
理解Session和Cookie:Java Web开发中的用户状态管理
35 4
|
10天前
|
Java 持续交付 项目管理
使用Maven进行项目管理:提高Java Web开发的效率
Maven 是一款强大的项目管理和构建自动化工具,广泛应用于Java社区。它通过依赖管理、构建生命周期管理、插件机制和多模块项目支持等功能,简化了项目的构建过程,提高了开发效率。本文将介绍Maven的核心功能及其在Java Web开发中的应用。
26 0
WK
|
16天前
|
安全 Java 编译器
C++和Java哪个更适合开发web网站
在Web开发领域,C++和Java各具优势。C++以其高性能、低级控制和跨平台性著称,适用于需要高吞吐量和低延迟的场景,如实时交易系统和在线游戏服务器。Java则凭借其跨平台性、丰富的生态系统和强大的安全性,广泛应用于企业级Web开发,如企业管理系统和电子商务平台。选择时需根据项目需求和技术储备综合考虑。
WK
18 0
|
1月前
|
XML 前端开发 Java
讲解SSM的xml文件
本文详细介绍了SSM框架中的xml配置文件,包括springMVC.xml和applicationContext.xml,涉及组件扫描、数据源配置、事务管理、MyBatis集成以及Spring MVC的视图解析器配置。
57 1
|
3月前
|
XML Java 数据格式
Spring5入门到实战------7、IOC容器-Bean管理XML方式(外部属性文件)
这篇文章是Spring5框架的实战教程,主要介绍了如何在Spring的IOC容器中通过XML配置方式使用外部属性文件来管理Bean,特别是数据库连接池的配置。文章详细讲解了创建属性文件、引入属性文件到Spring配置、以及如何使用属性占位符来引用属性文件中的值。
Spring5入门到实战------7、IOC容器-Bean管理XML方式(外部属性文件)
|
7天前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
53 8
|
1月前
|
XML JavaScript Java
java与XML文件的读写
java与XML文件的读写
25 3

推荐镜像

更多