Java读取.properties配置文件的几种方式
1. 使用Properties类来读取配置文件
通过使用Java中自带的Properties类,可以很方便地读取配置文件中的属性值。以下是基本的读取流程:
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties;
public class PropertiesDemo {
public static void main(String[] args) {
Properties properties = new Properties();
try {
// 加载配置文件
properties.load(new FileInputStream("config.properties"));
// 获取配置文件中的属性值
String username = properties.getProperty("username");
String password = properties.getProperty("password");
// 输出属性值
System.out.println("username: " + username);
System.out.println("password: " + password);
} catch (IOException e) {
e.printStackTrace();
}
}
}
2. 使用ClassLoader来读取配置文件
另一种读取配置文件的方法是使用ClassLoader,通过将配置文件放置在类路径下,可以使用ClassLoader读取配置文件。以下是基本的读取流程:
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class ClassLoaderDemo {
public static void main(String[] args) {
Properties properties = new Properties();
InputStream inputStream = null;
try {
// 使用ClassLoader来加载配置文件
ClassLoader classLoader = ClassLoaderDemo.class.getClassLoader();
inputStream = classLoader.getResourceAsStream("config.properties");
// 获取配置文件中的属性值
properties.load(inputStream);
String username = properties.getProperty("username");
String password = properties.getProperty("password");
// 输出属性值
System.out.println("username: " + username);
System.out.println("password: " + password);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (inputStream != null) {
inputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
3. 示例
假设有一个配置文件config.properties,它的内容如下:
username=admin
password=123456
以下是通过Properties类来读取配置文件中的属性值的示例:
Properties properties = new Properties();
try {
properties.load(new FileInputStream("config.properties"));
String username = properties.getProperty("username");
String password = properties.getProperty("password");
System.out.println("username: " + username);
System.out.println("password: " + password);
} catch (IOException e) {
e.printStackTrace();
}
以下是通过ClassLoader来读取配置文件中的属性值的示例:
Properties properties = new Properties();
InputStream inputStream = null;
try {
ClassLoader classLoader = ClassLoaderDemo.class.getClassLoader();
inputStream = classLoader.getResourceAsStream("config.properties");
properties.load(inputStream);
String username = properties.getProperty("username");
String password = properties.getProperty("password");
System.out.println("username: " + username);
System.out.println("password: " + password);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (inputStream != null) {
inputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
以上就是Java读取.properties配置文件的几种方式的详细攻略。使用以上方法能够方便地读取配置文件中的属性值,提高代码的可读性和可维护性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java读取.properties配置文件的几种方式 - Python技术站