1 导入jar包:commons-dbcp-1.4.jar, commons-pool-1.5.6.jar,mysql-connector-java-5.1.37-bin.jar
2 导入配置文件:dbcpconfig.properties
3 编写工具类DBCPUtils
public class DBCPUtils {
private static DataSource ds;
static{
try {
Properties ps = new Properties();
ps.load(new FileInputStream("dbcpconfig.properties"));
ds = BasicDataSourceFactory.createDataSource(ps);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static Connection getConnection() {
try {
return ds.getConnection();
} catch (SQLException e) {
// TODO Auto-generated catch block
throw new RuntimeException();
}
}
public static void closeAll(Connection conn, PreparedStatement pst, ResultSet rs) {
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(pst != null){
try {
pst.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
4 使用工具类操作mysq
public class DBCPUtilsDemo {
public static void main(String[] args) throws SQLException {
insert();
query();
}
public static void insert() throws SQLException {
Connection conn = DBCPUtils.getConnection();
String sql = "insert into practice (cid, cname) values (?, ?)";
PreparedStatement pst = conn.prepareStatement(sql);
pst.setObject(1, 1);
pst.setObject(2, "abc123");
int rows = pst.executeUpdate();
System.out.println(rows);
DBCPUtils.closeAll(conn, pst, null);
}
public static void query() throws SQLException{
Connection conn = DBCPUtils.getConnection();
Statement st = conn.createStatement();
String sql = "select * from users";
ResultSet rs = st.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getObject("uid") + "\t" + rs.getObject("username") + "\t" + rs.getObject("password") + "\t");
}
}
}
标签:rs,DBCP,SQLException,static,连接池,conn,mysql,catch,pst
来源: https://www.cnblogs.com/zsj03180204/p/11118651.html