数据库连接池
tomcat-dbcp c3p0 dbcp druid(alibaba)
数据源管理数据池
1)增加mvn依赖
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.4.2</version>
</dependency>
2)访问数据库代码
package zrm.util;
import org.apache.commons.dbcp2.BasicDataSource;
import javax.sql.DataSource;
import java.math.BigInteger;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class DBCPDemo {
public static DataSource getDataSourceWithDBCP() {
BasicDataSource dbcp = new BasicDataSource();
dbcp.setDriverClassName("com.mysql.jdbc.Driver");
dbcp.setUrl("jdbc:mysql://192.168.0.101:3306/ftable?characterEncoding=utf-8");
dbcp.setUsername("root");
dbcp.setPassword("root");
dbcp.setInitialSize(20);
return dbcp;
}
public static void main(String[] args) {
Connection connection = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
DataSource dataSource = getDataSourceWithDBCP();
connection = dataSource.getConnection();
String sql = "select * from creditor_info";
pstmt = connection.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
int id = rs.getInt(1);
String name = rs.getString(2);
String idcard = (String) rs.getObject(3);
System.out.println(id + "-" + name+"--"+idcard);
}
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (connection != null) {
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}