数据库连接池druid工具类
注意: 要保证一个应用程序只有一个DataSource实例,不要销毁它
单例设计模式:解决问题:为了保证一个类在一个应用程序 中只有一个实例
饿汉式单例:类初始化时直接创建单例的对象,初始化只进行一次,所有只有一个对象
//1.定义成员变量 DataSource
private static DataSource ds ;
static{
try {
//1.加载配置文件
Properties pro = new Properties();
pro.load(JDBCUtils.class.getClassLoader().getResourceAsStream(“druid.properties”));
//2.获取DataSource
ds = DruidDataSourceFactory.createDataSource(pro);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
懒汉式单例:创建时先进行判断,有如果有就直接获取,没有再进行创建,以保证只有一个实例
private static DataSource ds ;
/**
* 懒汉式单例设计模式
* * @return
*/
public DataSource getMyDataSource(){
if(ds==null){
try {
//1.加载配置文件
Properties pro = new Properties();
pro.load(JDBCUtils.class.getClassLoader().getResourceAsStream(“druid.properties”));
//2.获取DataSource
ds = DruidDataSourceFactory.createDataSource(pro);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return ds;
}else{
return ds;
}
}