1. 程式人生 > >DBCP連線池出現連線異常解決方案;

DBCP連線池出現連線異常解決方案;

1.properties檔案獲取出錯,將配置檔案重新刪掉再加入一個同名檔案覆蓋

2.關閉配置檔案  避免被Myeclipse佔用;

//工具包

package com.account.dao.util;


import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;


import javax.sql.DataSource;


import org.apache.commons.dbcp.BasicDataSourceFactory;


import datasource.dbcpDemo;


public enum jdcpUtil {
INSTANCE;
public static DataSource dataSource;
static{
try{
Properties p=new Properties();
InputStream in=Thread.currentThread().getContextClassLoader().
getResourceAsStream("dbcp.properties");
p.load(in);
dataSource = BasicDataSourceFactory.createDataSource(p);

System.out.println("配置檔案讀取成功");
System.out.println(dataSource.getConnection());
}catch(Exception e){
e.printStackTrace();
}
/*dataSource.setDriverClassName(p.getProperty("driverClassName"));
dataSource.setUsername(p.getProperty("userName"));
dataSource.setPassword(p.getProperty("password"));
dataSource.setUrl(p.getProperty("url"));
return dataSource.getConnection;
*/
}

public Connection getConn() {
System.out.println("正在進行連結");
try {
/*dataSource.setDriverClassName(p.getProperty("driverClassName"));
dataSource.setUsername(p.getProperty("userName"));
dataSource.setPassword(p.getProperty("password"));
dataSource.setUrl(p.getProperty("url"));*/
return dataSource.getConnection();
} catch (SQLException e) {

e.printStackTrace();

}
System.out.println("返回空");
return null;
}
}

//實現類

package datasource;


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import org.junit.Test;
import com.account.dao.util.jdcpUtil;


public class dbcpDemo{
@Test
public void dbcpTest() throws Exception{
Connection conn = jdcpUtil.INSTANCE.getConn();
System.out.println("連結成功");
String sql="SELECT * FROM student";
PreparedStatement ps=conn.prepareStatement(sql);
ResultSet rs=ps.executeQuery();
while(rs.next()){
System.out.println(rs.getString("name")+"\t"+rs.getString("gender")
+"\t"+rs.getString("classes"));
}
}
}

//配置檔案

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/student
username=root
password=root