jdbc链接数据库学习记录
来源:互联网 发布:瑞尔森大学怎么样知乎 编辑:程序博客网 时间:2024/06/05 21:03
就直接代码上路:
public class DBUtils { private static Properties props = new Properties(); private static ThreadLocal<Connection> connectionHolders = new ThreadLocal<Connection>(); static { InputStream ips = DBUtils.class.getClassLoader().getResourceAsStream("com/gmai/verre/utils/db.properties"); //采用classloader的方式主要是通过他的getResourceAsStream方法去获取配置文件 try { props.load(ips);//加载文档 } catch (IOException e) { e.printStackTrace(); throw new RuntimeException("Deloading the property file is fail"); } } public synchronized static Connection getConnection() {//创建获取数据库对象,返回单一的连接对象 Connection conn= connectionHolders.get() ; if (conn ==null ) { conn =getConn(); connectionHolders.set(conn); } return conn; } public static Connection getConn() {// 获取数据库连接,返回连接结果 Connection conn = null; try { Class.forName(props.getProperty("driveName")); conn = DriverManager.getConnection(props.getProperty("url"), props.getProperty("username"), props.getProperty("pwd")); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException("The remote access connection failed"); } return conn; } public static void close() { Connection conn = connectionHolders.get(); if (conn != null) { try { conn.close(); connectionHolders.set(null); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException("Close the connection to the database is failed."); } } } public static PreparedStatement prepare(Connection conn, String sql) { PreparedStatement ps=null; try { ps = conn.prepareStatement(sql); } catch (SQLException e) { e.printStackTrace(); } return ps; } public static void close(PreparedStatement ps) { try { if(ps!=null) { ps.close(); ps=null; } }catch (SQLException e) { e.printStackTrace(); } }}
阅读全文
0 0
- jdbc链接数据库学习记录
- 学习记录 数据库链接(一)
- jdbc链接各种数据库
- jdbc链接数据库大全
- jdbc链接数据库
- Jdbc 链接数据库
- JDBC数据库链接
- jdbc链接oracle数据库
- JDBC链接数据库
- jdbc 配置文件链接数据库
- jdbc链接数据库
- JDBC链接数据库
- JDBC链接Oracle数据库
- JDBC链接数据库
- JDBC链接Sql数据库
- JDBC链接数据库
- JDBC链接Access数据库
- JDBC链接sqlserver数据库
- Java动态代理
- 数据库基本
- CentOS下安装mysql及配置使用
- python 符合Python风格的对象
- 二分法——【Search Insert Position】【Search for a Range】【数字在排序数组中出现的次数】
- jdbc链接数据库学习记录
- Java进阶之路【代码篇】——《CleanCode》编程规则精编(9) 系统、迭进
- STM8学习笔记二----CCO输出
- 暑假集训日记--8.22--树状数组+练习赛
- dll回调给java的函数参数需要有字节数组类型参数的处理
- ionic 调用自定义cordova插件
- python socket的select,poll,epoll
- python系列之re模块(正则表达式)
- hdu 6153 A Secret【KMP/想法题】