• 廖雪峰Java5集合-3Map-Properties的使用


    Properties用于读取配置

    • properties文件只能使用ASCII码
    • #表示注释
    • 可以从文件系统读取.properties文件
            Properties props = new Properties();
            String f = "C:\conf\setting.properties";
            props.load(new FileInputStream(f));
    
    • 可以从classpath读取.properties文件
            Properties props = new Properties();
            props.load(getClass().getResourceAsStream("/com/testList/setting.properties"));
    
    • 读取多个.properties文件
    • 后读取的key-value会覆盖已读取的key-value。可以把默认的配置放在classpath中,根据环境编写另外的配置。

    Properties设计的目的是为了存储String类型的key-value,但Properties实际上是从Hashtable派生的,存在兼容型问题,且未修复,get和put方法不要用

    • String getProperty(String key)
    • void setProperty(String key,String value)
    • Object get(Object key)
    • void put(Object key,Object value)

    setting.properties

    url=https://www.baidu.com
    language=Java
    course.title=javau96c6u5408u7c7b
    

    Main.java

    public class Main {
        public static void main(String[] args) throws IOException {
            Properties props = new Properties();
            props.load(Main.class.getResourceAsStream("/com/testList/setting.properties"));
            String url = props.getProperty("url");
            String courseTitle = props.getProperty("course.title");
            String language = props.getProperty("language");
            String desc = props.getProperty("description","no desciption");
            System.out.println(url);
            System.out.println(courseTitle);
            System.out.println(language);
            System.out.println(desc);
        }
    }
    
    ## 总结 * Properties用于读写配置文件xx.properties * .properties文件只能使用ASCII编码 * 可以从ClassPath或文件系统读取.properties文件 * 读写Properties时: * 仅使用getProperty()/setProperty()方法 * 不要调用继承而来的get()/put()方法
  • 相关阅读:
    水晶报表参数字段在代码中赋值
    存储过程编写经验和优化措施
    积分与排名
    大话处理器
    抽象数学
    开普勒:天空的立法者
    Scalable Face Image Retrieval with IdentityBased Quantization and Multireference Reranking
    配色辞典
    图像识别顶级赛事
    Information Geometry
  • 原文地址:https://www.cnblogs.com/csj2018/p/10547630.html
Copyright © 2020-2023  润新知