编写配置文件
username=root
password=123456
url=jdbc:mysql://localhost:3306/myDatabase
driverClassName=com.mysql.cj.jdbc.Driver
编写测试类
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Enumeration;
import java.util.Properties;
/**
* properties配置文件的读取
*/
public class FileProperties {
public static void main(String[] args) {
// 配置类对象
Properties properties = new Properties();
try (
// 创建输入流
FileInputStream fis = new FileInputStream(Thread.currentThread().getContextClassLoader().getResource("jdbc.properties").getPath())
) {
// 加载流文件
properties.load(fis);
// 获取配置文件的内容
/* System.out.println("username: ==>" + properties.getProperty("username"));
System.out.println("password: ==>" + properties.getProperty("password"));
System.out.println("url: ==>" + properties.getProperty("url"));
System.out.println("driverClassName: ==>" + properties.getProperty("driverClassName"));*/
Enumeration<?> enumeration = properties.propertyNames();
while (enumeration.hasMoreElements()) {
String key = (String) enumeration.nextElement();
String value = properties.getProperty(key);
System.out.println(key + "==>" + value);
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
结果
使用JDK提供的工具类ResourceBundle(资源绑定类)
import java.util.Enumeration;
import java.util.ResourceBundle;
public class ResourceBundleTest {
public static void main(String[] args) {
// 相对路径是类的根目录src,例如:jdbc.properties 的完整路劲=》 src/com/java/study/jdbc.properties
/* 使用:不需要.properties
ResourceBundle.getBundle("com.java.study.jdbc");
ResourceBundle.getBundle("com/java/study/jdbc");
*/
// 获取资源绑定器对象,这里我的jdbc.properties 就在src下,所以直接写
ResourceBundle bundle = ResourceBundle.getBundle("jdbc");
// 通过key获取value
/*System.out.println(bundle.getString("username"));
System.out.println(bundle.getString("password"));
System.out.println(bundle.getString("url"));
System.out.println(bundle.getString("driverClassName"));*/
Enumeration<String> keys = bundle.getKeys();
while (keys.hasMoreElements()) {
String key = keys.nextElement();
String value = bundle.getString(key);
System.out.println(key + "=" + value);
}
}
}