zoukankan      html  css  js  c++  java
  • DBUtils

    1、使用类的加载器来加载database.properties文件流。

    2、读取配置文件,获取连接,只执行一次,static{ }

    3、JDBCUtils封装类

    package cn.itcast.jdbcutils;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Properties;
    
    public class JDBCUtils {
        
        public static Connection con;
        private static String driverClass;
        private static String url;
        private static String username;
        private static String password;
        public JDBCUtils(){};
        
        //定义静态方法,返回数据库的连接对象
        static{
            try{
                readConfig();
                // 1注册驱动
                Class.forName(driverClass);
                
                con = DriverManager.getConnection(url, username, password);
            }catch(Exception ex){
                throw new RuntimeException(ex+" 数据库连接失败!");
            }
        }
        
        //获取连接
        public static Connection getConnection(){
            return con;
        }
        
        private static void readConfig() throws IOException{
            // 2、获取配置文件流,读取文件信息,获取连接
            //使用类的加载器加载database文件
            InputStream in = JDBCUtils.class.getClassLoader().getResourceAsStream("database.properties");
            Properties pro = new Properties();
            pro.load(in);
            //System.out.println(pro);
            //获取集合中的键值对
            String driverClass = pro.getProperty("driverClass");
            String url = pro.getProperty("url");
            String username = pro.getProperty("username");
            String password = pro.getProperty("password");
        }
        
        
        public static void close(Connection con,ResultSet rs,PreparedStatement ps){
            if(rs != null){
                try{
                    rs.close();                
                }catch(SQLException ex){}
                
            }
            if(ps != null){
                try{
                    ps.close();                
                }catch(SQLException ex){}
                
            }
            if(con != null){
                try{
                    con.close();                
                }catch(SQLException ex){}
                
            }
        }
        
        public static void close(Connection con,PreparedStatement ps){
            
            if(ps != null){
                try{
                    ps.close();                
                }catch(SQLException ex){}
                
            }
            if(con != null){
                try{
                    con.close();                
                }catch(SQLException ex){}
                
            }
        }
    
    }
  • 相关阅读:
    springboot 上传文件过大的500异常
    java OSS批量下载,并压缩为ZIP
    Java 对象转xml (dom 4j)
    windows 10 64位机器上 安装部署
    Java 读取excel 文件流
    关于Java 去除空格,换行的代码
    ORACLE 查询近一天,近半小时内的数据
    【转】C#(ASP.Net)获取当前路径的方法集合
    【转】NumPy-快速处理数据
    【转】Eclipse 常用快捷键 (动画讲解)
  • 原文地址:https://www.cnblogs.com/ivan5277/p/10089853.html
Copyright © 2011-2022 走看看