javaWeb加载Properties文件

 public static Properties loadProps(String fileName) {
        Properties props = null;
        InputStream is = null;
        try {
            //注意:main/java、main/resources、test/java、test/resources这四个目录都是classpath的根目录
            //,当运行单元测试时,遵循“就近原则”,即优先从test/java、test/resources加载类或读取文件
            is = Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName);
            if (is == null) {
                throw new FileNotFoundException(fileName + " file is not found");
            }
            props = new Properties();
            props.load(is);
        } catch (IOException e) {
            LOGGER.error("load properties file failure", e);
        } finally {
            if (is != null) {
                try {
                    is.close();
                } catch (IOException e) {
                    LOGGER.error("close input stream failure", e);
                }
            }
        }
        return props;
    }

代码中的注释是在做有关单元测试的项目中写的,附上下图好理解。如果config.properties就在resources文件夹下,fileName="config.properties";如果config.properties在config文件夹下,fileName="config/config.properties"

原文地址:https://www.cnblogs.com/hujiapeng/p/5482538.html