10.19使用Druid(德鲁伊)数据库连接池

10.19使用Druid(德鲁伊)数据库连接池

Druid特点

日志监控功能

监控DB连接池和SQL的执行情况

操作步骤

导入依赖:

        <dependency>
           <groupId>com.alibaba</groupId>
           <artifactId>druid</artifactId>
           <version>1.2.8</version>
       </dependency>

Druid源码当中的一些常用方法:

属性名默认值说明
initialSize 0 初始化建立物理连接的个数,初始化发生在:显示调用init()方法或者getConnection
maxActive 8 最大连接池数量
minIdle   最小连接池数量
maxWait   获取连接时最大等待时间,单位:毫秒
poolPreparedStatement false 是否缓存preparedStatement,就是PSCachemysql下建议关闭

代码实现

package JDBCUtilsNo1;

import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import org.testng.annotations.Test;

import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties;

/**
* 测试Druid数据库连接池使用
* @since JDK 1.8
* @date 2021/10/19
* @author Lucfier
*/
public class DruidTest {

   private static DataSource source;

   //通过Druid数据库获取数据库连接
   /*
   通过配置文件的方式记录数据库的连接加载数据库的配置信息
   获取连接
   打印连接信息
    */
   @Test
   public void getConnection() throws Exception {
       //获取连接
       Connection conn = source.getConnection();
       System.out.println(conn);
  }

   static
  {
       try {
           Properties pros = new Properties();

           InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("Druid.properties");

           pros.load(is);

           source = DruidDataSourceFactory.createDataSource(pros);
      }catch (Exception e) {
           e.printStackTrace();
      }
  }
}

 

原文地址:https://www.cnblogs.com/JunkingBoy/p/15464349.html