• Druid连接池的简单使用


    第一步:导入两个jar包

    第二步:创建一个properties文件

    第三步:在properties文件中添加配置:连接驱动、数据库名字、数据库用户名和密码等

    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql:///ManageSys?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username=root password=admin123 initialSize=5 maxActive=10 maxWait=3000 maxIdle=6 minIdle=3

      

    第四步:创建连接池对象

    import com.alibaba.druid.pool.DruidDataSource;
    import com.alibaba.druid.pool.DruidDataSourceFactory;
    
    import javax.sql.DataSource;
    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.Properties;
    
    public class JdbcUtil {
    
        //    创建数据源对象
        private static DataSource dataSource;
    
        static {
    
    //        新建一个配置文件对象
            Properties properties = new Properties();
    
    //        通过类加载器找到文件路径,读配置文件
            InputStream inputStream = JdbcUtil.class.getResourceAsStream("/d.properties");
    
    //        加载属性文件
            try {
                properties.load(inputStream);
    
    //            创建连接池对象
                dataSource = DruidDataSourceFactory.createDataSource(properties);
    
    
            } catch (IOException e) {
                e.printStackTrace();
            } catch (Exception e) {
                e.printStackTrace();
            }
    
    
        }
    
    
        /*
        * 从连接池中获取连接
        * */
        public static Connection getConnect(){
            Connection con = null;
    
            try {
                con = dataSource.getConnection();
            } catch (SQLException e) {
                e.printStackTrace();
            }
    
            return con;
        }
    
    
    
        /*
        * 关闭资源
        * */
        public static void close(Connection connection, Statement statement, ResultSet resultSet){
    
            if(connection!=null){
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
            if(statement!=null){
                try {
                    statement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
            if(resultSet!=null){
                try {
                    resultSet.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
    
    
        }
    
    
    
    
    }
    

      

    最后测试一下效果:

    import java.sql.Connection;
    import java.sql.DatabaseMetaData;
    import java.sql.SQLException;
    
    public class Main {
    
        public static void main(String[] args) {
    
            Connection connection = JdbcUtil.getConnect();
    
            try {
                DatabaseMetaData databaseMetaData = connection.getMetaData();
                System.out.println(databaseMetaData.getURL() + ","
                        + databaseMetaData.getUserName() + ","
                        + databaseMetaData.getDriverName());
            } catch (SQLException e) {
                e.printStackTrace();
            }
    
    
        }
    }
    

      

  • 相关阅读:
    HPU第二次个人训练
    2019CCPC江西省赛
    CodeForces-913C 派对柠檬水
    [Codeforces Round #737 (Div. 2)] C Moamen and XOR (T1 D1
    E-Tree Xor_2021牛客暑期多校训练营4
    Educational Codeforces Round 107 (Rated for Div. 2) E Colorings and Dominoes
    状压dp 练习
    权值线段树模板(自用)
    Planar Reflections
    Codeforces Round #688 (Div. 2) D Checkpoints
  • 原文地址:https://www.cnblogs.com/lyd447113735/p/11848187.html
Copyright © 2020-2023  润新知