xml文件的jdom解析

8卡H20运行DeepSeek-V3-0324性能和推理实测 最近在一台 8卡H20 机器上,先后部署了 DeepSeek-R1-AWQ (671B)和最新的 DeepSeek-V3-0324 (685B) ,测试了下性能和数学问题跑分。服务器由火山引擎提供。 阅读详情

jdom解析xml,是基于树型结构,其利用的是纯java技术,实现对xml文档的各种操作。jdom可以说是直接为java编程服务的,把sax与dom的功能有效的结合起来。
由于jdom致力于隐藏解析xml的复杂性,因此用jdom解析xml就和java new一个新的对象一般,操作也是非常容易的。在jdom中,xml本身就是一个Document实例,每一个元素标签则为Element实例,属性则为Attribute实例,通过这些对象,对xml的操作会显得格外的简单。
使用jdom要下载jdom的开发包:jdom-jar下载地址: http://www.jdom.org/dist/binary/
将jdom.jar加入到工程目录中。
下面是一个person.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<persons>
	<person id="328">
		<name>zhangsan</name>
		<age>23</age>
	</person>
	<person id="303">
		<name>lisi</name>
		<age>22</age>
	</person>
</persons>

将解析出来的对象封装成Person对象,以下是Person类:
public class Person {
	private int id;
	private String name;
	private int age;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + age;
		result = prime * result + id;
		result = prime * result + ((name == null) ? 0 : name.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Person other = (Person) obj;
		if (age != other.age)
			return false;
		if (id != other.id)
			return false;
		if (name == null) {
			if (other.name != null)
				return false;
		} else if (!name.equals(other.name))
			return false;
		return true;
	}

	@Override
	public String toString() {
		return "Person [id=" + id + ", name=" + name + ", age=" + age + "]";
	}

	public Person(int id, String name, int age) {
		super();
		this.id = id;
		this.name = name;
		this.age = age;
	}

	public Person() {
		super();
	}
}

使用JDom来解析person.xml:
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.jdom2.Attribute;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;

public class JDomTest {
	public static void main(String[] args) {
		//创建解析器对象
		SAXBuilder builder = new SAXBuilder();
		//获取xml输入流
		InputStream in = JDomTest.class.getClassLoader().getResourceAsStream(
				"person.xml");
		try {
			//获得代表整个xml的Document对象
			Document document = builder.build(in);
			//获取根结点<persons>
			Element root = document.getRootElement();
			//获取根结点下的子结点<person>集合
			List<Element> list = root.getChildren();
			
			ArrayList<Person> persons = new ArrayList<Person>();
			Person person = null;
			//遍历<person>对应数据内容,将数据封装成Person对象后,放入集合中
			for (Element e : list) {
				person = new Person();
				//获取当前<person>结点的属性对象,并得到id的值
				Attribute idAtt = e.getAttribute("id");
				person.setId(idAtt.getIntValue());
				//获取<person>的子结点集合
				List<Element> childlist = e.getChildren();
				//遍历集合,获取name与age的值
				for (Element ce : childlist) {
					if ("name".equals(ce.getName())) {
						String name = ce.getText();
						person.setName(name);
					}
					if ("age".equals(ce.getName())) {
						String age = ce.getText();
						person.setAge(Integer.valueOf(age));
					}
				}
				//完成一次<person>遍历后,将获取的Person对象存入集合中。
				persons.add(person);
				person = null;
			}
			//完成数据读取,打印调试。
			printList(persons);
		} catch (JDOMException | IOException e) {
			e.printStackTrace();
		}
	}
	//用于打印集合。
	public static void printList(ArrayList<Person> persons) {
		for (Person p : persons) {
			System.out.println(p);
		}
	}
}


CVAT自动标注避坑指南:从nuctl安装到YOLOv5模型部署的完整流程 本文详细介绍了在CVAT中部署YOLOv5自动标注功能的完整流程与避坑指南。重点解决了从nuctl工具安装、项目创建时因网络问题导致的镜像拉取失败,到最终模型函数部署与CVAT集成的关键步骤。针对国内网络环境,提供了实用的镜像替换方案,帮助用户顺利完成基于CPU的自动化标注环境搭建。 阅读详情

相关推荐

RISC-V IP中的ITCM/DTCM与Slave-AHB接口设计解析

本文深入解析RISC-V IP中ITCM/DTCM与Slave-AHB接口的设计要点,涵盖TCM架构原理、总线协议实现及性能优化策略。通过实际案例展示如何实现单周期访问延迟,解决跨时钟域同步等关键问题,为嵌入式系统提供确定性内存访问方案。特别探讨了AHB总线仲裁机制和RTL实现技巧,助力开发者构建高效可靠的RISC-V处理器子系统。

weixin_28419039的博客 529

使用Jdom解析XML

关于使用jdom解析xml

u011526599的专栏 8493

AI风控系统中的实时决策架构:架构师的关键设计

当用户点击「确认支付」时,一场毫秒级的“欺诈攻防战”正在后台悄然打响:系统需要在100ms内完成用户行为特征提取→欺诈模型推理→规则引擎校验→最终决策返回。这就是AI风控实时决策架构的核心——用技术对抗“实时化的欺诈手段”。本文将以「餐厅智能点餐系统」为类比,拆解实时风控架构的每一层逻辑:从“如何快速拿到用户的实时行为特征”(像服务员实时收集顾客的忌口),到“如何让模型和规则协同决策”(像厨师长结合菜谱和经验判断菜能不能做),再到“如何保证系统扛住大促的高并发”(像餐厅加桌子应对客流高峰)。我们会用。

2502_91592937的博客 1472

jdom解析XML

jdom利用纯java技术对xml文档进行解析、生成、序列化等各种操作。 使用jdom之前,首先要导入jar包:jdom.jar  获得根元素: //首先确定xml文件位置 String xmlPath = "./src/ceshi/jdomTest.xml"; //使用的解析器,这里表示默认的解析器 SAXBuilder builder = new SAXBuilder(f

fengxiaotao_cool的专栏 788

XTDrone——ALOAM与3D激光雷达三维SLAM(处理没有点云和坐标系报错的问题)

本文介绍了XTDrone中配置如何在三维环境中使用A-LOAM算法配合velodyneHDL32激光雷达包括依赖包安装、代码修改和PX4系统配置,以及相关报错细节的注意事项。

weixin_45390670的博客 1326

第八届传智杯WPS智能办公能力挑战赛练习题库

本文是关于WPS Office软件操作知识的选择题汇总,内容涵盖WPS文字、表格和演示三大组件的常用功能。主要包括:云文档协同编辑、文本框插入、幻灯片打印设置、数据排序与筛选、函数应用(如SUMIF、COUNT)、动画效果设置、格式刷使用、页眉页脚设置、单元格引用类型等基础操作要点。同时涉及计算机基础概念如二进制、ROM存储器等。题目以单选和多选形式呈现,附带详细答案解析,全面检验用户对WPS办公软件的功能掌握程度和实际操作能力,适用于办公软件技能培训和水平测试。

qq_73044452的博客 1428

XML解析系列(三) -JDOM 技术解析实现介绍

本篇介绍第三种解析技术:JDOM 解析!

程序员志哥的博客 609

17、激光切割质量影响因素及优化研究

本文研究了激光切割过程中焦点位置、入射角、激光功率、切割速度和气体压力等因素对切割质量的影响,采用响应面方法(RSM)和Box-Behnken设计,基于三种不同喷嘴对SS 304不锈钢进行实验。通过建立切缝宽度比和条纹深度的回归模型,并结合方差分析验证模型有效性,深入分析各参数对切割质量的影响机制。研究发现喷嘴结构差异显著影响参数作用趋势,尤其在切割速度和气体压力响应上表现明显。最终通过多目标优化确定最小激光功率、适中切割速度和最大气体压力为最优组合,显著提升切割质量,为实际生产提供了理论依据和技术支持。未

grape的博客 131

java xml解析 jdom_Java XML解析 - 利用JDOM解析XML

Java XML解析 - 利用JDOM解析XMLJDOM是一个开源项目,它基于树形结构,利用纯Java的技术对XML文档实现解析、生成、序列化及多种操作。JDOM与DOM非常类似,它是处理XML的纯JAVA API,API大量使用了Collections类,且JDOM仅使用具体类而不使用接口。JDOM 它自身不包含解析器。它通常使用 SAX2 解析器来解析和验证输入 XML 文档(尽管它还可以将以...

weixin_39673972的博客 296

视图库对接系列(GA-T 1400)一、简单介绍

GA/T 1400《公安视频图像信息应用系统》 是我们需要参考看看的相关文档,里面有对应的标准和介绍,没有这个文档的话可以加群找我要。群的话 我放在最下面了。我们先简单想几个问题, 也就是这个协议主要干什么用的,为什么要有, 能做什么。

qq_37716298的博客 4286

OpenClaw赚钱实录:从“养龙虾“到可持续变现的实践指南

OpenClaw已经开源3个月有余,作为深耕AI Agent领域的博主,我亲身探索了各种基于OpenClaw的赚钱方法,也踩过坑、付出了时间与精力。现在,我将这些真金白银砸出来的实战经验,毫无保留地总结成这个专栏,分享给不想从零开始摸索的你。博主在优快云已有7万+粉丝和1100万+阅读量,但这却是我的第一个付费专栏。正因如此,我比任何人都更珍惜这个“第一次”。我会像一个手艺人打磨作品一样,死磕每一篇文章的质量,并持续根据订阅者的反馈优化内容。也许你的疑问就是当篇文章的优化点。

冯·诺依曼 2440

XML--04--解析-DOM4J 和 JDOM

DOM4J方式 dom4j是一个Java的第三方类库 XML API,类似于jdom,用来读写XML文件的。用于处理 XML、 XPath 和 XSLT,它基于 Java 平台,使用 Java 的集合框架,全面集成了 DOM,SAX 和 JAXP 对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,例如Hibernate,包括sun公司自己的JAXM也用了Dom4j。 一、DO

时光里的博客 2801

飞行机械臂设计

其后对飞行机械臂系统的机 理模型和基于 ADAMS 的物理模型进行了控制系统的搭建,对于机理模 型,设计了三个输入通道,分别是俯仰力矩,翻滚力矩与偏航力矩,控 制量为翻滚角,俯仰角,偏航角。四旋翼无人机自身具有独特的优势,在无人机上增加机械臂,整个 机体系统相当于一架空中行动自如的空中机器人,可以适应更多的应用场合,能够实现空中抓取,运输载荷,巡航监视等任务。的函数模块如图 4-8 所示,可见输入为 U1,U2,U3,U4,分别对应总力矩,俯仰力矩,翻滚力矩,偏航力矩,控制 量为俯仰角,翻滚角,偏航角。

coldmood77的博客 2915

JDOM解析XML文件

先导入jdom-2.0.6.jar包 // 1.创建一个SAXBuilder的对象 SAXBuilder saxBuilder = new SAXBuilder(); // 2.创建一个输入流,将xml文件加载到输入流中 in = new FileInputStream("src/res/books.xml"); // 3.通过saxBuilder的build...

weixin_42545898的博客 140

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Jdom解析多层xml文件

Jdom解析多层xml文件 一、Jdom简介: JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。     JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和DOM的功能有效地结合起来。 在使用设计上尽可能地隐藏原来使用XML过程中的复杂性。利用JDOM处理XML文档

md_shmily92的专栏 1724

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

jdom解析xml文件

用 JDOM解析XML文件需要用org.jdom.input.SAXBuilder对象的builder()方法创建Document对象,然后用Document类,Element类等方法读取所需的内容。 XML文件如下 8G 200 1580 10G 500 3000 JAVA代码如下

VLTIC的专栏 757

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

java jdom解析xml文件_Java&Xml教程(六)使用JDOM解析XML文件

JDOM 提供了非常优秀的Java XML API来更方便的读取、修改、生成XML文档。JDOM还提供了包装类供用户从SAX、DOM、STAX事件解析、STAX流解析中选择具体的实现。在本教程中,我们一起学习使用JDOM將读取XML文件信息,并转换为Java对象。JDOM并非标准JDK的一部分,因此使用JDOM需要从官方网站中下载JDOM的二进制包,下载后將JDOM的Jar包添加到工程的class...

weixin_29201313的博客 349

使用JDOM解析XML文件(JDOM解析)

首先去下载个JDOM的jar包,以下两个网站选一个吧,下载后导入项目 http://www.jdom.org/docs/apidocs/index.html www.jdom.org 实现过程如下: 我的XML文件命名变a.xml,假如其内容如下: 我的实现代码如下: import java.io.File; import java.io.IOException; im

小询的博客 918

JDom解析xml文件

1.DOM和SAX的不同:      1. DOM是基于内存的,不管文件有多大,都会将所有的内容预先装载到内存中。从而消耗很大的内存空间。而SAX是基于事件的。当某个事件被触发时,才获取相应的XML的部分数据,从而不管XML文件有多大,都只占用了少量的内存空间。      2. DOM可以读取XML也可以向XML文件中插入数据,而SAX却只能对XML进行读取,而不能在文件中插入数据。这也是SA

bingkafei222的博客 340

JDOM方式解析XML文件

JDOM是一种解析XML的Java工具包,它基于树型结构,利用纯Java的技术对XML文件进行解析 JDOM解析XML的步骤 创建SAXBuilder对象 调用build方法获得Document对象 获取根节点 获取根节点的直接子节点集合 遍历 XML文件 <?xml version="1.0" encoding="UTF-8"?> <books> <book id="1001"> <name>oracle</name>

m0_46294535的博客 418

Java——JDOM解析XML文件

跟前两篇文章一样,我们继续使用books.xml和Book类,在此不再赘述,直接给出代码:package domain;public class Book { private int id; private String name; private String author; private float price; public int getId() {

菜鸟的成长之路... 721

java jdom解析xml文件_JAVA使用JDOM读取XML文件

各种流行的程序设计语言都纷纷根据XML这一模型推出了自己的XML解析器,在JAVA世界里,APACHE组 织开发的XERCES应该是流行最广功能最为强大的XML解析器之一。但是由于W3C在设计DOM模型时,并不是针对某一种语言而设计,因此为了通用性, 加入了许多繁琐而不必要的细节 ,使JAVA程序员在开发XML的应用程序过程中感到不甚方便,因此JDOM作为一种新型的XML解析器横空出世,它不遵循D...

weixin_35615322的博客 266

JDom生成解析XML文件实例解析

1、程序代码package jdom_3; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Iterator; import java.util.List; import org.jdom.Attribute; i

wangbaojian_good的专栏 788

如何在Java中用jdom解析xml文件

要查看XML中元素的所有属性,可以使用JDOM库提供的Element类的getAttributes()方法。该方法返回一个org.jdom.Attribute对象列表,该列表包含元素的所有属性。该方法将返回一个org.jdom.Document对象,该对象包含整个XML文档的根元素。请注意,在此示例代码中,我们使用getAttributes()方法获取元素的所有属性,并遍历属性列表打印属性名称和值。您可以使用getChildren()方法获取根元素的所有子元素。使用setText()方法向元素添加文本。

Zero___0_0的博客 1068

jdom 解析xml文件

<br /><?xml version="1.0" encoding="UTF-8"?> <HD> <disk name="C"> <capacity>8G</capacity> <directories>200</directories> <files>1580</files> </disk> <disk name="D"> <capacity>10G</capacity> <directories>500</dire

sunny 576

JDOM解析xml文件

标题 JDOM解析xml文件 import java.io.File; import java.util.ArrayList; import java.util.List; import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.input.SAXBuilder; public class Jdom { public static void main(String[] args) throws Exception {

weixin_44266088的博客 342
上一篇: xml文件的dom解析
下一篇: java关于集合的遍历与增强for循环的使用
Sweeter
博客等级 码龄14年 81粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值