MyDataSource自定义数据源
/*
*
* 1. 一次性 初始化 10 个连接放到 池子中 .
* 2. 当 客户端调用 getConection 方法, 就返回一个连接给 调用者
* 3. 当连接 不再使用的 时候 ,提供一个方法 , 可以让这个连接放回到 池子中.
*
*/
public class MyDataSource implements DataSource{
private static LinkedList<Connection> list = new LinkedList<Connection>();
public MyDataSource() {
// 一次 性 搞 10 个 连接 对象 放到 池子中
System.out.println(" 一次 性 搞 10 个 连接 对象 放到 池子中 ");
for (int i = 0; i < 10; i++) {
Connection conn = JdbcUtils.getConnection();
list.add(conn);
}
}
@Override
public Connection getConnection() throws SQLException {
// 如果 调用 这个方法 ,就 将连接 返回给 调用者
if(list.size()==0){
// 如果进来,则说明没有连接了, 就在 搞 几个 连接 对象放到 池子中
for (int i = 0; i < 5; i++) {
Connection conn = JdbcUtils.getConnection();
list.add(conn);
}
}
final Connection conn = list.removeFirst();
Conn