1. 概述
资源文件也叫属性文件,指properties 文件,这种文件以key=value格式存储内容,代码中可以使用Properties 类来读取这个文件。String value=p.getProperty(key);就能得到对应的数据。一般这个文件作为一些参数的存储,代码就可以灵活一点用于适应多语言环境,随着系统的语言环境的变化,读取不同的属性文件,复杂点可以用xml 做配置。通俗点讲,就相当于定义一个文件,在这个文件里面定义一些变量的值,在程序里面可以调用这些变量。好处就是,如果程序中的参数值需要变动,直接来改这个.property 文件就可以了,不用再去修改源代码。优点在于有利于你以后的代码重构。
2. 资源文件的创建方法
在 IDE 里新建一个file 后缀改为.properties,就创建了一个属性文件。
3. 资源文件的结构
属性文件(资源文件)结构:
test1=aaa
test2=bbb
示例:
driver=com.microsoft.jdbc.sqlserver.SQLServerDriver
url=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=books
user=sa
password=120010
4. 资源文件的读取
读取.properties 文件的步骤如下:
创建继承自Properties 的类,并以单例模式获得实例:私有的静态成员,私有的默认构造方法,公有的静态同步方法。
使用Class 对象的getResourceAsStream()方法,把指定的属性文件读入输入流中,并使用Properties 类中的load()方法,从输入流中读取属性列表(键/值对)。
示例:
创建的.properties文件为
jdbc.driver_class=org.gjt.mm.mysql.Driver
jdbc.connection.url=jdbc\:mysql\://localhost\:3306/stumeg
jdbc.connection.username=root
jdbc.connection.password=1234
创建读取配置文件工具类:
public class ConfigManager{
private static ConfigManager configManager;//声明configManager对象
private static Properties properties;//声明properties对象
private ConfigManager(){//无参构造方法
//获取配置文件存储路径
String configFile = "database.properties";
//创建properties对象
properties = new Properties();
//创建流获取配置文件内容
InputStream in = ConfigManager.class.getClassLoader().getResourceAsStream(configFile);
try {
//调用load方法
properties.load(in);
} catch (IOException e) {
e.printStackTrace();
}
}
//创建单例模式
public static ConfigManager getInstance(){
if(configManager==null){
configManager = new ConfigManager();
}
return configManager;
}
public String getString (String key){
return properties.getProperty(key);
}
}
然后再需要用到地方调用
// 读出配置信息
String driver=ConfigManager.getInstance().getString("jdbc.driver_class");
String url=ConfigManager.getInstance().getString("jdbc.connection.url");
String username=ConfigManager.getInstance().getString("jdbc.connection.username");
String password=ConfigManager.getInstance().getString("jdbc.connection.password");