从配置文件读取Java SE工程中的配置信息
在Java SE工程中,通常会使用配置文件来存储一些固定的配置信息,如数据库连接信息、接口地址等。通过读取配置文件,可以方便地对这些信息进行管理和修改。
问题描述
假设我们有一个Java SE工程,需要从配置文件中读取数据库连接信息,包括数据库URL、用户名和密码。我们希望通过读取配置文件的方式,动态地获取这些信息,并连接到数据库。
解决方案
1. 创建配置文件
首先,我们需要创建一个配置文件,用来存储数据库连接信息。我们可以使用.properties格式的文件,如db.properties,内容如下:
db.url=jdbc:mysql://localhost:3306/mydatabase
db.username=root
db.password=123456
2. 读取配置文件
接下来,我们可以编写一个工具类来读取配置文件中的信息。我们可以使用Properties类来实现:
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
public class ConfigReader {
private Properties properties;
public ConfigReader() {
properties = new Properties();
try {
properties.load(new FileInputStream("db.properties"));
} catch (IOException e) {
e.printStackTrace();
}
}
public String getProperty(String key) {
return properties.getProperty(key);
}
public static void main(String[] args) {
ConfigReader configReader = new ConfigReader();
String url = configReader.getProperty("db.url");
String username = configReader.getProperty("db.username");
String password = configReader.getProperty("db.password");
System.out.println("Database URL: " + url);
System.out.println("Username: " + username);
System.out.println("Password: " + password);
}
}
3. 使用配置信息
最后,我们可以在主程序中调用ConfigReader类来获取配置信息,并使用这些信息连接到数据库:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) {
ConfigReader configReader = new ConfigReader();
String url = configReader.getProperty("db.url");
String username = configReader.getProperty("db.username");
String password = configReader.getProperty("db.password");
try {
Connection con = DriverManager.getConnection(url, username, password);
System.out.println("Successfully connected to database");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
状态图
stateDiagram
[*] --> ConfigReader
ConfigReader --> Ready
Ready --> [*]
序列图
sequenceDiagram
participant Main
participant ConfigReader
Main ->> ConfigReader: 创建ConfigReader实例
ConfigReader ->> ConfigReader: 加载配置文件
Main ->> ConfigReader: 获取数据库连接信息
ConfigReader ->> Main: 返回数据库连接信息
Main ->> Main: 连接到数据库
通过以上步骤,我们可以实现从配置文件中读取Java SE工程中的配置信息,实现了配置和业务逻辑的分禨,提高了代码的复用性和可维护性。同时,我们也可以通过修改配置文件来动态地修改数据库连接信息,而不需要修改源代码。这样的设计方式更加灵活和方便。