java - 读取配置文件

文章目录

  • [1. properties](#1. properties)
  • [2. XML](#2. XML)
    • [(1) dom4j](#(1) dom4j)
    • [(2) XPath](#(2) XPath)

1. properties

java 复制代码
	// 创建properties对象用于读取properties文件
	Properties properties = new Properties();
        properties.load(new FileReader("src/main/resources/test.properties"));
        String name = properties.getProperty("name");
        String age = properties.getProperty("age");
        System.out.println(name);
        System.out.println(age);

2. XML

(1) dom4j

maven坐标

xml 复制代码
    <dependency>
      <groupId>dom4j</groupId>
      <artifactId>dom4j</artifactId>
      <version>1.1</version>
    </dependency>
java 复制代码
		// 获取解析器对象
        SAXReader xmlReader = new SAXReader();
		// 获取xml文件
        Document student = xmlReader.read(new File("student.xml"));

        Element root = student.getRootElement();// 获取根标签
        List<Element> elements = root.elements();// 获取根标签中的所有标签
		// 获取第一个元素的name标签的值
        String name = elements.get(0).element("name").getText();
        // 获取第一个元素的age标签的值
        String age = elements.get(0).element("age").getText();
        System.out.println(name);
        System.out.println(age);

(2) XPath

使用路径表达式进行解析

xml 复制代码
// 获取解析器对象
        SAXReader xmlReader = new SAXReader();

        Document student = xmlReader.read(new File("src\\main\\resources\\student.xml"));
        // 获取一个
        Node node = student.selectSingleNode("/students/student/name");
        System.out.println(node.getText());
        //获取多个
        List<Element> list = student.selectNodes("/students/student/*");
        for (Element element : list) {
            System.out.println(element.getText());
        }
相关推荐
2601_9669496524 分钟前
如何封装 qd.klines.batch(),让批量 K 线查询函数在多个策略中复用?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
Mikko727 分钟前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端
.Bryce.34 分钟前
从零到一开发技术名词大全:从需求分析到 AI Agent 工程
java·网络·人工智能·agent·需求分析·agent评测
SL_staff1 小时前
JVS-APS的7个刚性约束设计:从无限产能幻觉到可执行排产的工程实践
java·spring cloud·全栈
神仙别闹2 小时前
基于Python实现英词语自动对齐系统
开发语言·python
代码山河2 小时前
基本类型转换:自动类型转换与强制类型转换
java·学习·架构·教程·面向对象·项目
老歌老听老掉牙2 小时前
圆柱端面四平面交线及其在yoz面投影的几何解析与 Python 实现
开发语言·python·平面
我要见SA姐13 小时前
Chrome 扩展安全攻防实录:从权限滥用到供应链投毒
运维·人工智能·python·机器学习·自动化
2601_962885723 小时前
给 backtrader 接 A 股数据:用 AlphaFeed 喂PandasData
python
中二骚年3 小时前
Windows 安全中心 / 防火墙故障,calc和Microsoft Store,终端(管理员)无法正常打开。 原因 + 修复方案
windows·安全·microsoft