加载.properties配置文件的三种方式

1.通过IO流的方式加载

可以加载任意路径下的文件,需要注意文件的路径

核心方法
load(InputStream inStream) 从字节输入流中读取键值对

方法:
setProperty(String key, String value) 存储一对数据,只是存储到了当前properties对象中,并没有存到文件中
getProperty(String key) 根据key获取值
stringPropertyNames() 获取所有的键,存入set集合

演示:

		//获取properties集合对象 
        Properties pro = new Properties();
        //调用load方法结合字节流读取配置文件并存入properties集合中
        pro.load(new FileInputStream("Demo\\src\\pro.properties"));
        //获取文件中所有的键
        Set<String> keys = pro.stringPropertyNames();
        //遍历所有的内容
        for (String s : keys){
            System.out.println(s + "=" + pro.getProperty(s));
        }

2.通过类加载器的方式加载

GetProperties是类名
该方式只能读取类路径下的配置文件

演示:

		//获取properties集合对象
        Properties pro = new Properties();
        //通过ClassLoader中的getResourceAsStream将配置文件读取到字节流中
        InputStream is = GetProperties.class.getClassLoader().getResourceAsStream("pro.properties");
        //将文件内容存入properties集合中
        pro.load(is);
        //获取文件中所有的键
        Set<String> keys = pro.stringPropertyNames();
        //遍历所有的内容
        for (String s : keys){
            System.out.println(s + "=" + pro.getProperty(s));
        }

3.通过ResourceBundle方式加载

局限性:只能加载src下,以properties结尾的文件
但是它的操作比较方便,不需要写文件路径和文件后缀名

方法:
static getBundle() 返回一个ResourceBundle对象
getString(String key) 根据key获取值
containsKey(String key) 判断是否包含指定的key值
getBaseBundleName() 获取文件名
keySet() 返回所有的键,并存入set集合

演示:

		//获取ResourceBundle对象 
        ResourceBundle pro = ResourceBundle.getBundle("pro");
        //获取文件中所有的键
        Set<String> keys = pro.keySet();
        //遍历所有的内容
        for (String s : keys){
            System.out.println(s + "=" + pro.getString(s));
        }

文件位置:演示以上三种方式,我把配置文件都放在了 src 路径下
在这里插入图片描述

三种方式,输出结果都是一样的,希望可以帮到你,对您有帮助的话就点个赞吧!。

  • 12
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值