java获取返回xml节点里的值,关于用java读取xml中节点的值解决方案
关于用java读取xml中节点的值
在写个工程,用到了如下配置的XML文档,时间紧没法网上资料太多一时看了头大,实在不知道怎么解析了,各位大神麻烦指教一下。
配置文档内容如下
hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
com.mysql.jdbc.Driver
jdbc:mysql://localhost/db?characterEncoding=gb2312
root
root
com.mysql.jdbc.Driver
jdbc:mysql://localhost/db?characterEncoding=gb2312
root
root
需要把上面的信息读取出来放map里。
比如键aaa.driver_class值com.mysql.jdbc.Driver
------解决思路----------------------
package hello.ant;
import java.io.InputStream;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class SaxXml {
public static void main(String[] args) throws Exception {
Map map=new LinkedHashMap();
InputStream is = SaxXml.class.getResourceAsStream("/hibernate.xml");
Document doc = new SAXReader().read(is);
Element root_node = doc.getRootElement();
//System.out.println(root_node.getName());
List child_node_list = root_node.elements();
for (Element child_node : child_node_list) {
//System.out.println(child_node.getName());
String key=child_node.attributeValue("name");
String value=child_node.getText();
map.put(key, value);
List child_node_child = child_node.elements();
for(Element child_node_child_list : child_node_child){
//System.out.println(child_node_child_list.getName());
String key1=child_node_child_list.attributeValue("name");
String value1=child_node_child_list.getText();
map.put(key1, value1);
}
}
for(Map.Entry entry:map.entrySet()){
System.out.println(entry.getKey()+"==="+entry.getValue());
}
//System.out.println(map.size());
}
}
java获取返回xml节点里的值,关于用java读取xml中节点的值解决方案相关推荐
- java获取当前时间代码(适合于是springboot+vue+java)
java获取当前时间代码(适合于是springboot+vue+java) /*** 获取当前的的动态时间格式*/Calendar calendar = Calendar.getInstance(); ...
- excel 读取json中指定字段值
excel 读取json中指定字段值 FIND语法 FIND(find_text, within_text, [start_num]) FIND实例一 FIND实例二 MID语法 MID(text, ...
- 【Flutter】Animation 动画 ( Flutter 动画基本流程 | 创建动画控制器 | 创建动画 | 设置值监听器 | 设置状态监听器 | 布局中使用动画值 | 动画运行 )
文章目录 一.创建动画控制器 二.创建动画 三.设置值监听器 四.设置状态监听器 五.布局中使用动画值 六.动画运行 七.完整代码示例 八.相关资源 Flutter 动画基本流程 : ① 创建动画控制 ...
- 第十四周项目一数组大折腾(1)创建一个有20个元素的整型数组,通过初始化,为数组中的前10个元素赋初值,然后通过键盘输入后10个元素的值,从前往后输出数组中元素的值,每五个元素
问题及代码 创建一个有20个元素的整型数组,通过初始化,为数组中的前10个元素赋初值,然后通过键盘输入后10个元素的值,从前往后输出数组中元素的值,每五个元素 换一行. /*烟台大学计算机学院 201 ...
- java 获取对象方法有哪些方法有哪些方法有哪些_Java中创建String 对象的方法有哪些...
Java中创建String 对象的方法有哪些 发布时间:2020-11-25 16:45:30 来源:亿速云 阅读:71 作者:Leah 这篇文章将为大家详细讲解有关Java中创建String 对象的 ...
- java 获取ip地址_老杜带你学Java【第二课】
上期链接:老杜带你学Java[第一课] 01 写在前面 欢迎来到杜老师的「零基础学Java」课堂~今后,我们就是Java软件工程师了.(此处应该有掌声???)本专题为<零基础学Java>专 ...
- java 父类返回子类是咧_【daily】Java泛型 - 返回父类的子类
一.栗子 public class GenericityInher { //error: Type mismatch: cannot convert from ArrayList to ArrayLi ...
- java获取已经打开的串口的输出流_使用Java读取串口的程序(转)
这个简单的程序包括以下文件: IMU.java (主程序) ReadBuffer.java (从缓冲区读取一个消息) ReadSerial.java (读取串口数据并放入缓冲区) SerialBuff ...
- php某列为键数组为值,PHP 将二维数组中某列值作为数组的键名 -- 超实用
有时候,想通过数组的中某字段值, 然后再在二维数组中获取存在该字段值的数组: 一般能想到的就是foreach 遍历比较一下跟该字段值一样,就获取到想要的数组,如下: //测试二维数组 $arr =ar ...
最新文章
- 构建node.js基础镜像_我如何使用Node.js构建工作抓取网络应用
- 获取数组第N个元素的方法
- go语言打印日期_判定是否掌握Go语言的最重要标准:对并发的掌握
- Java GregorianCalendar getMaximum()方法与示例
- docker添加jar包_Docker部署jar包
- 图论 —— k 短路
- 低版本系统兼容的ActionBar(六)用Fragment+ViewPager+Tab实现快速导航
- 项目遇到技术难题,领导让我假招聘套取解决方案,我没有照做,结果15天后蒙了
- 地大计算机历年分数线,中国地质大学武汉历年分数线 2021中国地质大学武汉录取分数线...
- Linux安装python3.8时,编译过程中报错Could not build the ssl module!
- Postman Mock Server 使用
- Materials Studio多层聚合物的构建及data文件导出
- android微信配色,万能微信公众号配色模板(神仙配色太好看了)
- 局域网络连接的计算机不全,大神教你win7局域网内可以看到对方计算机但无法连接的办法?...
- 华为笔记本触摸板使用技巧
- 新闻文本分类学习笔记
- Android call requires API level 12 的解决方案
- 10000,感谢有你
- 《算法技术手册》一1.3.5 融会贯通
- 小学老师超强语录总结版
热门文章
- java:二分法查找
- OJ1036: 某年某月有多少天
- 信息学奥赛一本通(1038:苹果和虫子)
- 绝对素数(信息学奥赛一本通-T1153)
- 26 WM配置-策略-入库策略6-定义批量仓储的策略B(Bulk Storage Strategy)
- 日语学习-多邻国-兴趣爱好
- win10无限重启_win10系统安装无限循环如何解决_win10教程
- datetimepicker获取年月日_bootstrap-datetimepicker 获取时间
- linux 64位内存划分,linux 64位内存空间大小?(linux 64 bits memory space size? [closed])
- 为什么c++要“在头文件中声明,在源文件中定义”?