
是自己编的 可以引用 连接池思想就是这个啊
不过你可以下载 已经编好的连接池 上面有API 自己可以按照这个思想 就回用 了;
import javaioFileInputStream;
public class ConnectionPool{
private Vector<Connection> pool;
private String url;
private String username;
private String password;
private String driverClassName;
// 连接池的大小,也就是连接池中有多少个数据库连接。
private int poolSize = 1;
private static ConnectionPool instance =null;
//私有的构造方法,禁止外部创建本类的对象。
// 使用了设计单子模式
private ConnectionPool(){
init();
}
// 返回当前连接池的一个对象
public static ConnectionPool getInstance(){
if(instance==null){
instance=new ConnectionPool();
}
return instance;
}
//连接池初始化方法,读取属性文件的内容,建立连接池中的初始连接
private void init(){
pool= new Vector<Connection>(poolSize);
addConnection();
}
//返回连接到连接池中
public synchronized void release(Connection conn){
pooladd(conn);
}
// 关闭连接池中的所有数据库连接
public synchironized void closePool(){
for(int i=0;i<poolsize();i++){
try{
((Connection)poolget(i))close();
}catch(SQLExcepiton e){
eprintStachTrace();
}
poolremove(i);
}
}
/
返回连接池中的一个数据库连接
/
public synchronized Connection getConnection(){
if(poolsize()>0){
Connection conn = poolget(0);
poolremove(conn);
return conn;
}else{
return null;
}
}
// 在连接池中创建初始设置的的数据库连接
private void addConnection(){
Connection conn = null;
for (int i=0;i<poolSize;i++){
try{
ClassforName(driverClassName);
conn=javasqlDrivermanagergetConnection(url,username,password);
pooladd(conn);
}catch(ClassNotFoundException e){
eprintStachTrace();
}catch(){}
}
}
}
以上就是关于java数据库连接池详细 *** 作全部的内容,包括:java数据库连接池详细 *** 作、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)