首先需要导入jar包,mysql的jar包也需要导入
然后添加配置文件,注意这里的配置文件一般是放在项目根目录的,但是博主这里放在了根目录下面的
resource文件夹下,所以在写配置文件路劲时候,需要注意
博主配置文件:
driverClassName=com.mysql.jdbc.Driver
url=jdbc\:mysql\://127.0.0.1\:3306/test?useUnicode\=true&characterEncoding\=UTF-8
username=root
password=depp
maxActive=30
maxIdle=10
maxWait=1000
initialSize=5
minIdle=1
removeAbandoned=true
获得Connection连接
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp2.BasicDataSourceFactory;
public class DBCPUtil {
/**
* 数据源
*/
private static DataSource DS;
private static final String configFile="dbcp.properties";
/**
* 构造函数
*/
public DBCPUtil(){
initDbcp();
}
private static void initDbcp(){
Properties pops=new Properties();
File file = new File(configFile);
FileInputStream in=null;
try {
//读取配置文件
in = new FileInputStream(configFile);
pops.load(in);
/**
* 空指针异常
* pops.load(Object.class.getResourceAsStream(configFile));
*
*/
//通过dbcp的工厂方法创建一个DS对象
DS=BasicDataSourceFactory.createDataSource(pops);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public Connection getConn(){
Connection con=null;
if(DS!=null){
try {
con=DS.getConnection();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
//关闭自动提交
con.setAutoCommit(false);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
return con;
}
}
经测试,使用dbcp获得连接的速度更快