前提需要导入两个jar包:
|----德鲁伊jar包 ---- druid-1.1.10.jar
|----数据库驱动包 ---- mysql-connector-java-5.1.7-bin.jar
因为是工具类 采用大量的静态化操作
步骤:
- |------1. 初始化:需要定义 数据源 类
- |------2. 读取配置文件
- |------3. 实例化Properties 类
- |------4. 通过props对象进行加载配置文件的输入流
- |------5. 通过DuridDataSource核心类的创建数据源方法进行 赋值给 dataSource
代码:
package cn.javabs.user;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
/**
* 前提需要导入两个jar包:
* |----德鲁伊jar包 ---- druid-1.1.10.jar
* |----数据库驱动包 ---- mysql-connector-java-5.1.7-bin.jar
* 因为是工具类 采用大量的静态化操作
* 步骤:
* |----1. 初始化:需要定义 数据源 类
* |----2. 读取配置文件
* |----3. 实例化Properties 类
* |----4. 通过props对象进行加载配置文件的输入流
* |----5. 通过DuridDataSource核心类的创建数据源方法进行 赋值给 dataSource
*/
public class DruidUtils {
// 1. 初始化:需要定义 数据源 类
public static DataSource dataSource = null; // dataSource 的值 就是 null
static {
// 2. 读取配置文件
// |-------------类名.class.获取类加载器.获取资源作为流("配置文件名的名称"); | jdbc.properties 是一个配置文件的类型 比较方便
InputStream is = DruidUtils.class.getClassLoader().getResourceAsStream("jdbc.properties");
// 3. 实例化Properties 类
Properties p = new Properties();
// 4. 通过props对象进行加载配置文件的输入流
try {
p.load(is);
// 5. 通过DuridDataSource核心类的创建数据源方法进行 赋值给 dataSource
dataSource = DruidDataSourceFactory.createDataSource(p);
}catch (Exception e){
throw new RuntimeException(e);
}
}
/**
* 为什么有这个方法?
* |----答:因为我存在就是为了让其他类可以调用我的 谁调用我,我就跟谁说的数据
*/
public static DataSource getDataSource(){
return dataSource;
}
/**
* 数据源获取连接的方法
*/
public static Connection getConnection(){
try {
return dataSource.getConnection();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}