当前位置:网站首页>快速熟知XML解析
快速熟知XML解析
2022-07-07 23:53:00 【xiongᥫᩣ】
目录
一,Java中配置文件的三种配置位置及读取方式
类名.class.getResourceAsStream("xxx"):拿到同包下的文件
类名.class.getResourceAsStream("/xxx"):拿到根目录下的文件
context.getResourceAsStream("/WIN-INF/xxx"):拿到WIN-INF安全路径
二,dome4j常用方法
selectNodes:拿到多个元素
selectSingleNode:拿到单个元素
getRootElement():拿到根元素
attributeValue:只有元素才可以点出这个方法来获取值
getText:拿到元素文本
注:元素可以是节点,但是元素中的属性是节点不是元素
三、xpath语法
/:定位路径
@:属性
四,案例
jar包(有需要可以私信博主哦)

config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE config[
<!ELEMENT config (action*)>
<!ELEMENT action (forward*)>
<!ELEMENT forward EMPTY>
<!ATTLIST action
path CDATA #REQUIRED
type CDATA #REQUIRED
>
<!ATTLIST forward
name CDATA #REQUIRED
path CDATA #REQUIRED
redirect (true|false) "false"
>
]>
<config>
<action path="/studentAction" type="org.lisen.mvc.action.StudentAction">
<forward name="students" path="/students/studentList.jsp" redirect="false"/>
</action>
</config>xmlRead.java
package com.zking.xml01;
import java.io.InputStream;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class XmlRead {
public static void main(String[] args) throws Exception {
InputStream in = XmlRead.class.getResourceAsStream("/config.xml");
SAXReader reader= new SAXReader();
Document doc = reader.read(in);
Element root=doc.getRootElement();
List<Element> action =root.selectNodes("action");
for(Element e: action) {
String path = e.attributeValue("path");
String type = e.attributeValue("type");
System.out.println("action path="+path);
System.out.println("action type="+type);
List<Element> forwards = e.selectNodes("forward");
for(Element f: forwards) {
String name = f.attributeValue("name");
String fPath = f.attributeValue("path");
String redirect = f.attributeValue("redirect");
System.out.println("forward name="+name);
System.out.println("forward fPath="+fPath);
System.out.println("forward redirect="+redirect);
}
}
}
}输出结果:

由此可以看出我们已经拿到了xml文件中的所有属性及元素了
今天的知识分享就到此为止啦,精彩下期继续!
边栏推荐
- Probability distribution
- Content of one frame
- 2022 safety officer-c certificate examination paper and safety officer-c certificate simulated examination question bank
- 碳刷滑环在发电机中的作用
- General configuration tooltip
- 2、TD+Learning
- Continued from the previous design
- 3、多智能体强化学习
- About snake equation (5)
- Break algorithm --- map
猜你喜欢

Basic realization of line graph

5、离散控制与连续控制

Redis cluster

Probability distribution

About how USRP sets the sampling frequency below the minimum sampling frequency reached by the hardware

2021-04-12 - new features lambda expression and function functional interface programming

用户之声 | 对于GBase 8a数据库学习的感悟

解决报错:npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.

Content of one frame

用户之声 | 冬去春来,静待花开 ——浅谈GBase 8a学习感悟
随机推荐
Deep learning website
The communication clock (electronic time-frequency or electronic time-frequency auxiliary device) writes something casually
The solution of frame dropping problem in gnuradio OFDM operation
2022 safety officer-c certificate examination paper and safety officer-c certificate simulated examination question bank
不算不知道,花呗分期的真实利率居然这么高
Guojingxin center "APEC education +" Shanghai Jiaotong University Japan Cooperation Center x Fudan philosophy class "Zhe Yi" 2022 New Year greetings
2021 welder (primary) examination skills and welder (primary) operation examination question bank
General configuration toolbox
4. Strategic Learning
Anaconda3 download address Tsinghua University open source software mirror station
Qt - - Packaging Programs - - Don't install Qt - can run directly
Call (import) in Jupiter notebook ipynb . Py file
Usage of xcolor color in latex
2021 Shanghai safety officer C certificate examination registration and analysis of Shanghai safety officer C certificate search
Guojingxin center "APEC investment +": some things about the Internet sector today | observation on stabilizing strategic industrial funds
Apt get error
写一个纯手写的qt的hello world
Basic realization of line chart (II)
Multi purpose signal modulation generation system based on environmental optical signal detection and user-defined signal rules
Understanding of maximum likelihood estimation