我们可以通过自定义的方式实现连接池!分析连接池类应该包含特定的属性和方法!
属性: 集合 放置Connection
方法: 获取连接方法
回收连接方法
具体实现代码:
public class Pool {
static LinkedList<Connection> list = new LinkedList<Connection>();
static {
for (int i = 0; i < 10; i++) {
Connection connection = JDBCUtils.newInstance().getConnection();
list.add(connection);
}
}
/*** 从连接池子中获取连接的方式 * @return */
public static Connection getConnection() {
if (list.isEmpty()) {
//JDBCUtils类是自定义类,封装了连接数据库的信息代码
Connection connection = JDBCUtils.newInstance().getConnection();
list.addLast(connection);
}
Connection conn = list.removeFirst();
return conn;
}
/*** 返回到连接池子中 */
public static void addBack(Connection conn) {
if (list.size() >= 10) {
try {
conn.close();
} catch (SQLException e) { // TODO Auto-generated catch block
e.printStackTrace();
}
} else {
list.addLast(conn); //10
}
}
/*** 获取连接池子中连接数量的方法 */
public static int getSize() {
return list.size();
}
}
此文章用于学习记录