JDBCUtil.java数据库连接池工具类

来源:互联网 发布:js动态添加div属性值 编辑:程序博客网 时间:2024/06/03 19:57
package com.ardo.bs.util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JDBCUtil {private static JDBCUtil instance = null;private final static String URL = "jdbc:mysql://localhost:3306/onlinecourse";private final static String USERNAME = "root";private final static String PASSWORD = "1234";//定义一个私有的无参构造器private JDBCUtil(){}//在静态语句块中加载驱动static {try {Class.forName("com.mysql.jdbc.Driver");} catch (ClassNotFoundException e) {e.printStackTrace();}}//用于获取当前类的唯一实例public static JDBCUtil getInstance(){if(instance==null){//延迟加载需要考虑并发问题,所以给当前类加锁synchronized (JDBCUtil.class) {if(instance == null){instance = new JDBCUtil();}}}return instance;}//用于获取Connection对象的方法public Connection getConnection(){Connection conn = null;try {conn = DriverManager.getConnection(URL,USERNAME,PASSWORD);} catch (SQLException e) {e.printStackTrace();}return conn;}//用于进行资源释放的方法public void free(Connection conn,Statement stmt,ResultSet rs){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();}}}}

原创粉丝点击