重学java 69.IO流 Properties集合

且敬我疯狂,生命中不败的篇章

                                        —— 24.6.13

Properties结合IO流使用方法

一、回顾:

1.概述:Properties extends Hashtable

2.特点:

        a.无序,无索引
        b.key唯一,value可重复
        c.线程安全
        d.key和value默认类型都是String

3.特有方法(Map里的方法都可用):

        setProperty(string key,String value) —> 存键值对

        getProperty(String key) —> 根据key获取value

        StringPropertyNames() —> 获取所有的key存放在set集合中

        load(InputStream in) —> 将流中的数据加载到Properties集合中

二、使用场景

        配合配置文件使用

注意:

        将来我们不能将很多的硬数据放到源码中,比如用户名和密码这些数据,因为将来我们有可能换用户名或者密码,如果一换,我们就需要去源码中修改,将来我们的类和类之间都有联系,有可能牵一发动全身,所以我们需要将这些数据提取出来,放到文件中,改的时候直接去文件中改,源码不需要改动

三、创建配置文件:

        1.在模块下右键 -> file -> 取名为 xxx.properties

        2.在xxx.properties文件中写配置数据
                a.key和value都是 key = value 形式
                b.key和value都是String的,但是不要加双引号
                c.每个键值对写完之后,需要换行再写下一对
                d.键值对之间最好不要有空格(空格可以有,但是不建议写)
                e.键值对中建议不要使用中文(中文可以有,但是直接读取会乱码,需要转换流转码)

示例

jdbc.username=root

jdbc.password=1234

import java.io.FileInputStream;
import java.util.Properties;
import java.util.Set;

public class Demo284Properties1 {
    public static void main(String[] args) throws Exception {
        Properties properties = new Properties();
        FileInputStream fis = new FileInputStream("AllWillBest_Java/jdbc.properties");
        properties.load(fis);
        Set<String> set = properties.stringPropertyNames();
        for (String key : set) {
            System.out.println(key + "..." + properties.getProperty(key));
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值