单例模式读取配置文件的java全部代码,主函数和uml图
时间: 2024-02-20 08:57:47 浏览: 77
读取配置文件代码
以下是使用单例模式读取配置文件的Java代码、主函数和UML图:
Java代码:
```java
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class ConfigReader {
private static ConfigReader instance = null;
private Properties properties;
private ConfigReader() {
properties = new Properties();
try {
InputStream inputStream = getClass().getClassLoader().getResourceAsStream("config.properties");
properties.load(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public static ConfigReader getInstance() {
if (instance == null) {
synchronized (ConfigReader.class) {
if (instance == null) {
instance = new ConfigReader();
}
}
}
return instance;
}
public String getProperty(String key) {
return properties.getProperty(key);
}
}
```
主函数:
```java
public class Main {
public static void main(String[] args) {
ConfigReader configReader = ConfigReader.getInstance();
String username = configReader.getProperty("username");
String password = configReader.getProperty("password");
System.out.println("Username: " + username);
System.out.println("Password: " + password);
}
}
```
UML图:
```
+---------------------------+
| ConfigReader |
+---------------------------+
| - properties: Properties |
+---------------------------+
| + getInstance(): ConfigReader |
| + getProperty(key: String): String |
+---------------------------+
+---------+
| Main |
+---------+
| |
+---------+
```
在这个例子中,单例模式确保只有一个ConfigReader实例被创建。 getInstance() 方法返回这个唯一的实例,getProperty() 方法获取配置文件中的属性值。主函数中使用 ConfigReader 类读取配置文件中的用户名和密码,然后输出到控制台。
阅读全文