zoukankan      html  css  js  c++  java
  • ClassPathResource读取classpath路径下的文件内容

    在做项目的过程中,需要将一些参数写入properties文件的配置中,如何读取到properties的文件内容呢,我用到了spring core提供的类org.springframework.core.io.ClassPathResource,通过这个类,可以读取到指定classpath下路径的文件内容。

    用来读取properties配置的工具类如下所示:

    package com.x.certificate.properties;
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.Properties;
    
    import org.springframework.core.io.ClassPathResource;
    
    /** 
     * 读取properties文件的配置
     * @author xuhaojin
     * @version [版本号, 2020年3月23日]
     */
    public class PropertiesReader {
    
        public static String getConfig(String pathInDemo, String key) throws IOException {
            return getProperties(pathInDemo).getProperty(key);
        }
    
        public static Properties getProperties(String pathInDemo) throws IOException {
            Properties properties = new Properties();
    
            ClassPathResource classPathResource = new ClassPathResource(pathInDemo);
    
            File file = classPathResource.getFile();
    
            BufferedReader bufferedReader = null;
            try {
                bufferedReader = new BufferedReader(new FileReader(file));
                properties.load(bufferedReader);
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            return properties;
        }
    
        public static void main(String[] args) throws IOException {
            System.out.println("libreoffice.path=" + getConfig("config\certificate.properties", "libreoffice.path"));
            System.out.println(
                    "certificate.image.suffix=" + getConfig("config\certificate.properties", "certificate.image.suffix"));
        }
    
    }

    其中下面这两行代码获取到配置文件:

           ClassPathResource classPathResource = new ClassPathResource(pathInDemo);
           File file = classPathResource.getFile()

    配置文件的实际路径在src/test/resources的config文件夹下:

  • 相关阅读:
    种子爆破&[GWCTF 2019]枯燥的抽奖
    Springboot学习笔记(三)
    Springboot学习笔记(二)
    Springboot学习笔记(一)
    深入理解java虚拟机阅读笔记(二)对象是否存活与垃圾收集算法
    深入理解java虚拟机阅读笔记(一)java内存区域
    OOP和AOP的区别
    浅谈对spring的理解
    mybatis逆向工程配置文件
    mybatis中${}和#{}的区别
  • 原文地址:https://www.cnblogs.com/xhj123/p/12562226.html
Copyright © 2011-2022 走看看