- 目的:简化书写
- 分析:
- 注册驱动的抽取
- 抽取一个方法获取连接对象
- 需求:不想传递参数,同时保证工具类的通用性
- 解决:配置文件
- Jdbc.properties
- Url=
- User=
- Password=
- Jdbc.properties
- 抽取一个方法释放资源
- 代码实现:
public class JDBCUtils { Private static String url ; Private static String username; Private static String password; Private static String driver; /** *文件的读取,只需要读一次即可拿到这些值。使用静态代码块 */ static{ //读取资源文件,获取值。 try{ //1.创建Properties集合类 Properties Pro = new properties(); //获取src路径下的文件方式--->ClassLoader 类加载器 ClassLoader classloader = JDBCUtils.class.getClassLoader(); URL res = classLoader .getResource("jdbc.properties"); String path = res.getPath(); System .out .println(path); //加载文件 pro.load(new FieldReader(path)); //获取数据,赋值 url = pro.getProperty("url"); user = pro.getProperty("user"); password = pro.getProperty("password"); driver = pro.getProperty("driver"); //注册驱动 Class.forName(driver); }catch(IOException e){ e.printStackTrace(); } }catch(ClassNotFoundException e){ e.printStackTrace(); } /** *获取连接 */ public static Connection getConnection()throw SQLException{ return DriverManager.getConnection(url,user,password); } /** *释放资源 */ public static void close (ResultSet rs, Statement stmt ,Connection conn) { If (rs!= NULL){ try{ rs.close(); }catch(SQLException e){ e.printStackTrace(); } } If (stmt != NULL){ try{ stmt.close(); }catch(SQLException e){ e.printStackTrace(); } } If (conn != NULL){ try{ conn .close(); }catch(SQLException e){ e.printStackTrace(); } } } } }
JDBC工具类:JDBCUtils
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.