Java读取配置文件并将值赋给静态变量的操作是应用程序中常见的需求。下面是以properties文件为例,讲解如何读取并赋值静态变量的步骤:
1. 准备配置文件
首先需要准备一个.properties文件,其中包含一组键值对,如下所示:
jdbc.url=jdbc:mysql://localhost:3306/test
jdbc.username=root
jdbc.password=123456
2. 加载配置文件
Java中读取properties文件的方式是使用java.util.Properties类。在程序中加载这个配置文件:
Properties props = new Properties();
try {
FileInputStream in = new FileInputStream("config.properties");
props.load(in);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
这个操作会把config.properties文件中的键值对加载到Properties对象中。
3. 读取配置值并处理
假设我们在应用程序中需要把配置文件中的jdbc.url、jdbc.username、jdbc.password三个属性赋值给分别对应的静态变量。代码示例如下:
public class Config {
public static String jdbcUrl;
public static String jdbcUsername;
public static String jdbcPassword;
static {
Properties props = new Properties();
try {
FileInputStream in = new FileInputStream("config.properties");
props.load(in);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
jdbcUrl = props.getProperty("jdbc.url");
jdbcUsername = props.getProperty("jdbc.username");
jdbcPassword = props.getProperty("jdbc.password");
}
}
在静态块中读取配置文件,然后分别把属性赋值给静态变量。这样在程序启动之前就已经完成了配置信息的加载和赋值操作。
示例1
假设我们要编写一个程序,需要连接MySQL数据库,并提供一些操作数据库的功能。在这个程序中,我们需要把数据库连接URL、用户名和密码三个属性从配置文件中加载并赋值给静态变量。示例代码如下所示:
public class MySqlUtil {
public static String jdbcUrl;
public static String jdbcUsername;
public static String jdbcPassword;
static {
Properties props = new Properties();
try {
FileInputStream in = new FileInputStream("config.properties");
props.load(in);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
jdbcUrl = props.getProperty("jdbc.url");
jdbcUsername = props.getProperty("jdbc.username");
jdbcPassword = props.getProperty("jdbc.password");
}
public static Connection getConnection() throws Exception {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword);
return conn;
}
}
这里我们定义了一个MySqlUtil类,其中定义了三个静态变量,分别对应数据库连接URL、用户名和密码。在静态块中读取配置文件,然后分别把属性赋值给静态变量。接下来提供了一个getConnection()方法,用于创建数据连接。
示例2
假设我们要编写一个程序,需要从文件中读取一些配置信息,并将这些配置信息封装到一个对象中。在这个程序中,我们需要把文件路径、文件名、文件类型这三个属性从配置文件中加载并赋值给静态变量。示例代码如下所示:
public class FileConfig {
public static String filePath;
public static String fileName;
public static String fileType;
static {
Properties props = new Properties();
try {
FileInputStream in = new FileInputStream("config.properties");
props.load(in);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
filePath = props.getProperty("file.path");
fileName = props.getProperty("file.name");
fileType = props.getProperty("file.type");
}
public static String getFullPath() {
return filePath + fileName + "." + fileType;
}
}
这里我们定义了一个FileConfig类,其中定义了三个静态变量,分别对应文件路径、文件名和文件类型。在静态块中读取配置文件,然后分别把属性赋值给静态变量。接下来提供了一个getFullPath()方法,用于获取完整文件路径。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java如何读取配置文件并赋值静态变量 - Python技术站