自定义JDBCUtils工具类

一  创建一个javaProject,先要导入mysql-connector的jar包,添加依赖关系。然后导入jdbc.properties配置文件

 

二 创建一个jdbc.properties放在src路径下:

jdbc.user=root
jdbc.password=123456
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://xxx.xxx.xxx.xxx:3306/database?useUnicode=true&characterEncoding=utf8

 

以上两步操作完成后 ,结构示意图如下

 

 

 

 

三 JDBCUtils工具类代码实现

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
public class JDBCUtils {
        private static String url;
        private static String user;
        private static String password;
        private  static String driver;
        /**
         * 文件读取,只会执行一次,使用静态代码块
         */
        static {
            //读取文件,获取值
            try {
                //1.创建Properties集合类
                Properties pro = new Properties();
                //获取src路径下的文件--->ClassLoader类加载器---->获取一个流InputStream
                InputStream in = JDBCUtils.class.getClassLoader().getResourceAsStream("JDBC.propertis");
                //2.加载文件
                pro.load(in);
                //3获取数据
                url = pro.getProperty("jdbc.url");
                user = pro.getProperty("jdbc.user");
                password = pro.getProperty("jdbc.password");
                driver = pro.getProperty("jdbc.driver");
                //4.注册驱动
                Class.forName(driver);
            } catch (IOException e) {
                e.printStackTrace();
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
        /**
         * 获取连接
         * @return  Connection 连接对象
         */
        public static Connection getConnection() throws SQLException {
            Connection conn = DriverManager.getConnection(url, user, password);
            return conn;
        }
        /**
         * 释放资源
         * @param rs
         * @param st
         * @param conn
         */
        public static void close(ResultSet rs, Statement st,Connection conn){
            if (rs != null){
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if(st != null){
                try {
                    st.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (conn != null){
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
}
posted @ 2020-01-20 16:37  自信的咸鱼  阅读(1186)  评论(0编辑  收藏  举报