时间:2021-07-01 10:21:17 帮助过:17人阅读
二、改良版Druid连接池
我们发现 在加载文件的时候太复杂,能否将其封装成一个工具类,方便使用。
package JdbcUtils; import java.io.IOException; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import javax.sql.DataSource; import com.alibaba.druid.pool.DruidDataSourceFactory; /* * 封装一个Druid的工具类 Jdbc * */ public class Jdbc { private static DataSource ds; //1.定义成员变量 DataSource static{ try { //2.加载配置文件 获得连接池 Properties pro01=new Properties(); pro01.load(Jdbc.class.getClassLoader().getResourceAsStream("druid.properties")); ds=DruidDataSourceFactory.createDataSource(pro01); } catch (Exception e) { e.printStackTrace(); } } public static Connection getConnection() throws SQLException{ //获得连接 return ds.getConnection(); } public static void close(Statement start,Connection con) { //释放资源 if (start!=null) { try { start.close(); } catch (SQLException e) { e.printStackTrace(); } } if (con!=null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } public static void close(ResultSet rs,Statement start,Connection con) { //重载 继续释放资源。 if (rs!=null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (start!=null) { try { start.close(); } catch (SQLException e) { e.printStackTrace(); } } if (con!=null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
三、测试Jdbc 封装类。
package cn.zhouzhou; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import JdbcUtils.Jdbc; /* * 测试我们写的封装 jdbc工具类 * */ public class Text01 { public static void main(String[] args) { Connection con01=null; PreparedStatement ps=null; try { con01=Jdbc.getConnection();//获得连接 String sql01="insert into shop values(999,?,?,‘刚把对!‘)";//定义SQL语句 占位子节符 在shop中 添加一条数据 ps=con01.prepareStatement(sql01); //获得接口 执行平台 ps.setString(1, "haha"); //设置键值对 ps.setDouble(2, 66666); int i=ps.executeUpdate();//执行SQL语句 System.out.println(i); } catch (SQLException e) { e.printStackTrace(); }finally{ Jdbc.close(ps, con01); } } }
Druid数据库连接池
标签:平台 statement utils 1.0 value .com insert 加载文件 .sql