加载属性配置文件
加载属性配置文件
CAMELLIA!!! note 目录
加载属性配置文件
一、使用 Properties
类加载属性配置文件
Properties
类:Properties
是一个表示一组持久属性的类。属性列表中每个键及其对应值都是字符串。- 用途:用于存储和管理配置信息,例如数据库连接配置。
加载配置文件:
- 使用
Properties
类的load(Reader reader)
方法,可以将配置文件的内容加载到Properties
对象中。 - 例:
properties.load(new FileReader("config.properties"));
- 使用
获取文件路径:
- 使用
Thread.currentThread().getContextClassLoader().getResource("path").getPath()
获取配置文件的绝对路径。 - 例:
String path = Thread.currentThread().getContextClassLoader().getResource("config.properties").getPath();
- 使用
读取属性:
- 不知道键的情况下:
- 使用
Properties.propertyNames()
方法获取所有键。 - 遍历键并使用
Properties.getProperty(String key)
获取对应的值。
- 使用
- 知道键的情况下:
- 直接使用
Properties.getProperty(String key)
获取相应的值。 - 例:
String value = properties.getProperty("key");
- 直接使用
- 不知道键的情况下:
load()可以读取Reader、InputStream。
二、使用 ResourceBundle
类加载属性配置文件
ResourceBundle
类:- 用于从类路径下的属性文件中获取本地化的资源。
- 常用于加载国际化资源文件。
加载配置文件:
- 通过
ResourceBundle.getBundle(String baseName)
方法加载指定基名的属性文件。 - 例:
ResourceBundle bundle = ResourceBundle.getBundle("config");
- 通过
文件路径限制:
ResourceBundle
只能加载类路径下的.properties
文件,不能加载其他路径下的属性文件。- 指定基名时,不需要包含文件扩展名,例如
jdbc.properties
文件的基名为jdbc
。
读取属性:
- 使用
ResourceBundle.getString(String key)
方法,通过键名获取对应的值。 - 例:
String value = bundle.getString("key");
- 使用
注意事项:
ResourceBundle
适用于从类路径下的资源文件中读取属性信息,常用于国际化资源文件的加载。- 使用
ResourceBundle
时,属性文件应放置在类路径下,并且命名遵循约定(不带扩展名)。