当前位置:网站首页>Jfinal loading configuration file principle

Jfinal loading configuration file principle

2022-08-09 09:11:00 Hu lotte

重点:看findFile方法,代码中mainmethods are only used for testing purposes

This code is modeled afterjfinal书写,Little to no additions of its own,It can be used to load files by yourself
配置文件名为:test.properties;
配置文件内容为:test=123
输出结果为:123
Pay attention to the location of the configuration file:resources下

import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties;

public class FindProperties {
    
    public static void main(String[] args) {
    
        FindProperties file = new FindProperties();
        Properties filePro = file.findFile("test.properties", "utf-8");
        String test = filePro.getProperty("test");
        System.out.println(test);
    }

    /** * 加载配置文件 * @param fileName * @param encoding */
    private Properties findFile(String fileName, String encoding) {
    
        Properties prop = null;
        InputStream in = null;
        try {
    
            ClassLoader ret = Thread.currentThread().getContextClassLoader();
            ret = ( ret != null ? ret : getClass().getClassLoader());
            in = ret.getResourceAsStream(fileName);
            if(in == null){
    
                throw new IllegalArgumentException("配置文件不存在:"+fileName);//非法参数异常
            }
            prop = new Properties();
            prop.load(new InputStreamReader(in,encoding));
            return prop;
        }catch (IOException e){
    
            throw new RuntimeException("Wrong load file",e);
        }finally {
    
            if(in != null){
    
                try {
    
                    in.close();
                } catch (IOException e) {
    
                    //Logging off exception,The output representation is used here
                    System.out.println("关闭输入流异常:"+e.getMessage());
                }
            }
        }
    }
}

原网站

版权声明
本文为[Hu lotte]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/221/202208090907014607.html