XXX.properties
uname=root password=root driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/kgcnews
package cn.kgc.util; import jdk.internal.util.xml.impl.Input; import java.io.IOException; import java.io.InputStream; import java.util.Properties; /** * @Description: 读取properties * @author: wangyue * @date: 2021年08月05日 8:43 * * 作用Properties对象读取 properties文件 * ConfigManager单例的 * 1 将构造方法私有化 * 2 在本类中创建该类的对象 * 3 将本类中创建的类的对象返回 * * 饿汉式: JVM 加载ConfigManager类的configManager属性的时候,创建ConfigManager对象 * * 懒汉式: JVM 加载ConfigManager类的configManager属性的时候,没有创建ConfigManager对象 */ public class ConfigManager { private static Properties properties; private static ConfigManager configManager= new ConfigManager(); // private static ConfigManager configManager; //使用properties对象读取db.properties文件中的内容 //properties对象.load(inputStream);读取配置文件 private ConfigManager(){ properties=new Properties(); InputStream inputStream= null; try { //获得输入流 inputStream = this.getClass().getClassLoader().getResourceAsStream("db.properties"); //使用properties对象加载输入流 properties.load(inputStream); } catch (IOException e) { e.printStackTrace(); }finally { try { if(inputStream!=null){ inputStream.close(); //关闭资源 } } catch (IOException e) { e.printStackTrace(); } } } //返回ConfigManager类的对象 public synchronized static ConfigManager getInstance(){ // if(configManager==null){ // configManager = new ConfigManager(); // } return configManager; } //根据属性的名字获得属性的值 public String getValue(String key){ return properties.getProperty(key); } }