当前位置: 首页 > news >正文

xml文件的读取

在src下有文件jdbc.xml

<?xml version="1.0" encoding="UTF-8"?>
<jdbc>
	<url>jdbc://localhost:3306/test</url>
	<dirverClass>com.mysql.jdbc.Driver</dirverClass>
	<username>root</username>
	<password>student</password>
</jdbc>
test.java如下:

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class Test1 {

	public static void main(String[] args) throws Exception {
		// DocumentBuilderFactory(抽象)的newInstance方法创建工厂
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
		// DocumentBuilderFactory创建DocumentBuilder
		DocumentBuilder db = dbf.newDocumentBuilder();
		// DocumentBuilder的parse解析xml得到Document对象
		// Document 是文档对象,dom的核心
		// Document document = db.parse("src/jdbc.xml");
		Document document = db.parse(Test1.class.getResourceAsStream("/jdbc.xml"));
		 System.out.println(document);
		// 使用Document的getDocumentElement方法获取根元素
		Element root = document.getDocumentElement();
		// System.out.println(root.getTagName());//jdbc
		NodeList nodeList = root.getChildNodes();
		System.out.println(nodeList.getLength());
		for (int i = 0; i < nodeList.getLength(); i++) {
			Node node = nodeList.item(i);
			if (node.getNodeType() == Node.ELEMENT_NODE) {
				Element el = (Element) node;
				System.out.println(el.getTagName() + "=" + el.getTextContent());
			}
		}

	}

}
得到如下的测试结果:

[#document: null]
9
url==jdbc://localhost:3306/test
dirverClass==com.mysql.jdbc.Driver
username==root
password==student



相关文章:

  • Java 反射机制(一)
  • fail-fast
  • UVA11212 EditingaBook ( IDA*搜索)
  • TreeMap的介绍
  • Treemap的应用
  • 《Effective C++》——条款04:确定对象使用前已先被初始化
  • Treemap的使用
  • 数组根据index拆分和查询下标
  • include指令和include动作的区别
  • sql-主键即自增长的设置及语法实现
  • android中的样式主题和国际化
  • sql-go的使用
  • sql 获取新插入的id值的三种方法
  • 关于WCF SessionId的说明
  • idea中的jsp依赖
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • Akka系列(七):Actor持久化之Akka persistence
  • Java 23种设计模式 之单例模式 7种实现方式
  • Java精华积累:初学者都应该搞懂的问题
  • java中的hashCode
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • tensorflow学习笔记3——MNIST应用篇
  • 初探 Vue 生命周期和钩子函数
  • 从PHP迁移至Golang - 基础篇
  • 当SetTimeout遇到了字符串
  • 官方解决所有 npm 全局安装权限问题
  • 如何在 Tornado 中实现 Middleware
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 因为阿里,他们成了“杭漂”
  • 1.Ext JS 建立web开发工程
  • 阿里云重庆大学大数据训练营落地分享
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • # Apache SeaTunnel 究竟是什么?
  • #include<初见C语言之指针(5)>
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (C)一些题4
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (附源码)ssm失物招领系统 毕业设计 182317
  • (六)c52学习之旅-独立按键
  • (七)c52学习之旅-中断
  • (算法)N皇后问题
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转)负载均衡,回话保持,cookie
  • (转)可以带来幸福的一本书
  • *** 2003
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .net mvc 获取url中controller和action
  • .net 生成二级域名