用单例模式读取properties配置文件(Java实现)不用try catch方法实现
时间: 2023-08-15 21:18:45 浏览: 110
在Java中,可以通过静态代码块的方式,在类加载时读取配置文件,从而实现在不使用try-catch语句的情况下读取properties配置文件。以下是示例代码:
```java
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class ConfigReader {
private static final ConfigReader instance = new ConfigReader();
private Properties properties;
private ConfigReader() {
properties = new Properties();
try (InputStream inputStream = getClass().getResourceAsStream("config.properties")) {
properties.load(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public static ConfigReader getInstance() {
return instance;
}
public String getProperty(String key) {
return properties.getProperty(key);
}
}
```
在这个示例中,使用了饿汉式的单例模式,通过静态代码块读取配置文件。当类加载时,会自动执行静态代码块,从而读取配置文件。getProperty()方法用于获取配置文件中指定key的值。
使用示例:
```java
ConfigReader configReader = ConfigReader.getInstance();
String value = configReader.getProperty("key");
```
需要注意的是,在使用静态代码块的方式时,需要将配置文件放置在类路径下。如果配置文件不在类路径下,需要使用其他方式读取配置文件。
阅读全文