关于druid连接池的使用详解

 更新时间:2025年02月21日 09:57:15   作者:陈卸甲  
文章介绍了Druid连接池的两种使用方式:直接在代码中配置和通过配置文件配置,同时,文章详细讲解了如何在Web项目中启用Druid的监控功能,包括配置web.xml文件、设置过滤器等步骤,最后,文章还提到了Druid提供的加密解密工具,使数据库密码更安全

druid连接池的使用

最好用的jdbc连接池莫过于druid

druid第一种连接方式

DruidDataSource dds = new DruidDataSource();
    
        try {
            dds.setUrl("jdbc:mysql://localhost:3306/");
            dds.setUsername("root");
            dds.setPassword("admin");
            dds.setDriverClassName("com.mysql.cj.jdbc.Driver");
            System.out.println(dds.getConnection());
        } catch (SQLException e) {
            e.printStackTrace();
        }

第二种连接方式:使用配置文件

DruidDataSource dds = new DruidDataSource();
        Properties p = new Properties();
        //加载提前写好的配置文件
        InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties");
        try {
            p.load(is);
            //druid加载文件内容
            dds.setConnectProperties(p);
            System.out.println(dds.getConnection());
        } catch (IOException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }

配置文件内容:

#必须按这个配置名填写druid.
druid.url=jdbc:mysql://localhost:3306/db1
druid.username=root
druid.password=admin
druid.driverClassName=com.mysql.cj.jdbc.Driver
#初始化创建连接数
druid.initialSize=2
#最大连接数
druid.maxActive=8
#启用数据监控监控
druid.filters=stat config

连接方式说完之后开始web监控

启用之前要开启监控,如配置文件最后一行

然后配置web.xml过滤器

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
<!-- 过滤器 -->
    <filter>
        <filter-name>DruidWebStatFilter</filter-name>
        <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
        <init-param>
            <param-name>exclusions</param-name>
            <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>DruidWebStatFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <servlet>
        <servlet-name>DruidStatView</servlet-name>
        <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
        <init-param>
            <!-- 允许清空统计数据 -->
            <param-name>resetEnable</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <!-- 用户名 -->
            <param-name>loginUsername</param-name>
            <param-value>admin</param-value>
        </init-param>
        <init-param>
            <!-- 密码 -->
            <param-name>loginPassword</param-name>
            <param-value>123</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>DruidStatView</servlet-name>
        <url-pattern>/druid/*</url-pattern>
    </servlet-mapping>


</web-app>

然后开启服务器

输入自己设置的账号密码就能登录了

druid还带了加密解密工具 让人就算拿到了项目源码对于不懂的人也不知道数据库密码

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 一文讲解Java的String、StringBuffer和StringBuilder的使用与区别

    一文讲解Java的String、StringBuffer和StringBuilder的使用与区别

    String是不可变的字符序列,而StringBuffer和StringBuilder是可变的字符序列,本文就来详细的介绍一下Java的String、StringBuffer和StringBuilder的使用与区别,感兴趣的可以了解一下
    2024-03-03
  • Java interrupt()方法使用实例介绍

    Java interrupt()方法使用实例介绍

    一个线程在未正常结束之前, 被强制终止是很危险的事情. 因为它可能带来完全预料不到的严重后果比如会带着自己所持有的锁而永远的休眠,迟迟不归还锁等。 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了
    2023-02-02
  • Spring MVC 请求参数绑定实现方式

    Spring MVC 请求参数绑定实现方式

    Spring MVC 是一个用于构建 Web 应用程序的框架,它提供了一种方便的方式来处理 HTTP 请求和响应,Spring MVC 提供了多种方式来实现请求参数绑定,本文结合实例代码给大家介绍的非常详细,需要的朋友跟随小编一起看看吧
    2023-09-09
  • java实现的AES加密算法完整实例

    java实现的AES加密算法完整实例

    这篇文章主要介绍了java实现的AES加密算法,结合完整实例形式分析了AES加密类的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • java文件输出流写文件的几种方法

    java文件输出流写文件的几种方法

    这篇文章主要介绍了java文件输出流写文件的几种方法,需要的朋友可以参考下
    2014-04-04
  • IntelliJ IDEA 中高效使用 Git 的实用指南

    IntelliJ IDEA 中高效使用 Git 的实用指南

    本文主要介绍了在IntelliJ IDEA中高效使用Git的实用指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2026-02-02
  • SpringMVC上传和解析Excel方法

    SpringMVC上传和解析Excel方法

    这篇文章主要介绍了SpringMVC上传和解析Excel方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • java多线程编程之向线程传递数据的三种方法

    java多线程编程之向线程传递数据的三种方法

    在多线程的异步开发模式下,数据的传递和返回和同步开发模式有很大的区别。由于线程的运行和结束是不可预料的,因此,在传递和返回数据时就无法象函数一样通过函数参数和return语句来返回数据
    2014-01-01
  • Springboot接口参数校验的方法

    Springboot接口参数校验的方法

    在设计接口时我们通常需要对接口中的非法参数做校验,以降低在程序运行时因为一些非法参数而导致程序发生异常的风险,这篇文章给大家介绍Springboot接口参数校验的方法,感兴趣的朋友一起看看吧
    2024-03-03
  • 浅谈JSP是如何编译成servlet并提供服务的

    浅谈JSP是如何编译成servlet并提供服务的

    JSP是Servlet的一种特殊形式,JSP页面最终是编译为Servlet执行的,那么本文主要介绍了JSP是如何编译成servlet并提供服务的,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07

最新评论