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"); } } }