Java ResourceBundle 工具类


ResourceBundle 工具类

  • 工具类 Properties 能够读取资源文件,而当资源文件是以 .properties 结尾的文件时,可以使用 JDK 提供的另外一个工具类 ResourceBundle 来对文件进行读取,使得操作更加简单;
  • Properties 是一个抽象类,我们可以使用它的子类 PropertyResourceBundle 来读取以 .properties 结尾的配置文件;
  • java.util.ResourceBundle,详见:Class ResourceBundle

1. ResourceBundle 类对象的创建

  • 在 ResourceBundle 类中提供了一个静态方法,用于获得它的子类对象(抽象类不能创建对象):
// 使用指定的基本名称,默认语言环境和调用者的类加载器获取资源包。
static ResourceBundle getBundle(String baseName);
  • .properties 配置文件需要放置在类的根路径 src 下面;
  • 给定参数只需要配置文件的名称,不要扩展名;
    1
import java.util.ResourceBundle;

public class Test {
    public static void main(String[] args) {
        //获得ResourceBundle类的对象
        ResourceBundle bundle = ResourceBundle.getBundle("data");//父类引用指向子类对象(多态)
        System.out.println(bundle);
    }
}
/*
输出
java.util.PropertyResourceBundle@4dd8dc3
 */

2. ResourceBundle 读取配置文件操作

  • ResourceBundle 类提供了一个 getString(String key) 方法用于读取配置文件中指定 key 的值:
//从此资源束或其父项之一获取给定密钥的字符串
String getString(String key) 

2

import java.util.ResourceBundle;
public class Test {
    public static void main(String[] args) {
        //获得ResourceBundle类的对象
        ResourceBundle bundle = ResourceBundle.getBundle("data");
        System.out.println(bundle);
        //读取指定key(username)的值
        String username = bundle.getString("username");
        System.out.println(username);
        //读取指定key(password)的值
        String password = bundle.getString("password");
        System.out.println(password);
    }
}
/*
输出
java.util.PropertyResourceBundle@214c265e
Regino
MyPassword
 */

推荐阅读:Java Properties 属性集合 >>>

发布了255 篇原创文章 · 获赞 258 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Regino/article/details/104958778