写在之前:
不管以后对于那种类型的池 都需要List接口利用多态的写法来对一系列集合框架类进行实例化对象 以此该对象调用add方法 来装多个此种类型的实例化对象。
数据库连接池的设计思路比线程池简单易懂
以下是示例:
和之前线程池的设计思想相同之处是(也不是说和线程池设计思路一致 放在其他的类的池设计 也是如此)
都是在其无参构造或者有参构造法里初始化一些数据 比如具体池的大小 以具体大小来实例化该类对象的个数
配合示例代码——线程池和数据库连接池在构造方法里的不同点:
1、线程池 在构造方法里的实例化对象是在该线程池类下,一个继承了Thread的专门处理某种线程的类
在线程池类构造方法里按具体池大小实例化的对象个数就是那个类 但这些实例化的不会装进 集合里 而是需要处理的线程类装里面 由预先就启动的那个继承了Thread的类的对象们进行处理
LinkedList<Runnable> tasks=new LinkedList<>();
int poolsize;
public ThreadPool(int size) {
synchronized(tasks)
{
this.poolsize=size;
for (int i = 0; i < this.poolsize; i++) {
new Threadcheckingfile("process"+i).start();
}
}
}
class Threadcheckingfile extends Thread{
}
2、而数据库连接池 就是实例化多个Connection 对象 装进集合里
List<Connection> jc=new ArrayList<>();
int size;
public JDBCPOOL(