//通过工厂对象拿到数据源
// 通过数据源获取链接
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp.BasicDataSourceFactory;
import org.junit.Test;
public class Dbcp {
private static DataSource dataSource;
/*mysql的包
mysql-connection-java-5.1.49.jar
* 导入两个dpcp的jar包
* commons-dbcp-1.4jar
* commoms-pool-1.5.6.jar
*
* */
static {
FileInputStream fileInputStream;
try {
// 1.读取配置文件
fileInputStream = new FileInputStream("src/dbcp.properties");
// 2.创建properties文件
Properties properties = new Properties();
//3.将文件流关联 到properties对象中
properties.load(fileInputStream);
//4.获取数据源
dataSource = BasicDataSourceFactory.createDataSource(properties);
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Test
public void deleteUser() throws SQLException {
//从连接池数据源获取链接
Connection connection = dataSource.getConnection();
String sql = "delete from account where id =?";
PreparedStatement ps = connection.prepareStatement(sql);
ps.setInt(1, 3);
int ro = ps.executeUpdate();
if(ro>0) {
System.out.println("删除成功");
}else {
System.out.println("删除失败");
}
// 关闭资源
ps.close();
}
}
properties文件
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///school
username=root
password=root
initialSize=6
maxActive=6