美文网首页
Java对properties文件操作(ResourceBund

Java对properties文件操作(ResourceBund

作者: 伍个一 | 来源:发表于2020-12-18 18:20 被阅读0次

1. 使用场景

properties文件多为配置信息,日常操作很频繁,例如测试框架中的接口配置文件,如下

test.url=http://localhost:8888

#登陆接口uri
#login.uri=/v1/login
login.uri=/login
#更新用户信息接口uri
updateUserInfo.uri=/v1/updateUserInfo

#获取用户列表接口uri
getUserList.uri=/v1/getUserInfo

#获取用户信息接口uri
getUserInfo.uri=/v1/getUserInfo

#添加用户接口uri
addUser.uri=/v1/addUser

那么,在写接口用例的时候,怎么获取到这些对应的测试数据呢?


示例

2. 第一种方法:ResourceBundle类

        //第一种  ResourceBundle类
        //1. 声明ResourceBundle并获取文件
        ResourceBundle bundle = ResourceBundle.getBundle("application", Locale.CHINA);
        //2. 获取值
        String apiValue = bundle.getString("login.uri");
        
        System.out.println("ResourceBundle类方式提取数据:" + apiValue);

3. 第二种方法:Properties类

 //1. 文件路径
        String dataPath = "src/main/resources/application.properties";
        try {
            //2.获取输入流
            InputStream inputStream = new BufferedInputStream(new FileInputStream(new File(dataPath)));
            //3. 声明Properties类
            Properties properties = new Properties();
            //4. 从字节输入流中读取键值对。
            properties.load(inputStream);
            //5. 获取值
            String string = properties.getProperty("login.uri");

            System.out.println("Properties类提取数据:" + string);
        } catch (IOException e) {
            System.out.println("properties文件路径书写错误,请检查!");
        }
控制台

4. ResourceBundle类和Properties类的差异

ResourceBundle类通常是用于针对不同的语言来使用的属性文件。

而如果你的应用程序中的属性文件只是一些配置,并不是针对多国语言的目的。那么使用Properties类就可以了。

通常可以把这些属性文件放在某个jar文件中。然后,通过调用class的getResourceAsStream方法,来获得该属性文件的流对象,再用Properties类的load方法来装载。

相关文章

网友评论

      本文标题:Java对properties文件操作(ResourceBund

      本文链接:https://www.haomeiwen.com/subject/iydfnktx.html