`
tang9140
  • 浏览: 34552 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Druid数据源配置入门(超详细)

 
阅读更多

Druid是阿里开发的数据库连接池,据说比c3p0性能更好,支持下国产。下面就来学习下超简单的连接池配置:

    <!-- 阿里 druid数据库连接池 -->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
        init-method="init" destroy-method="close">
        <!-- 基本属性 url、user、password -->
        <property name="url" value="${db.mysql.url}" />
        <property name="username" value="${db.mysql.username}" />
        <property name="password" value="${db.mysql.password}" />
        <property name="driverClassName" value="${driverClassName}" />

        <!-- 配置初始化大小、最小、最大 -->
        <property name="initialSize" value="5" />
        <property name="minIdle" value="10" />
        <property name="maxActive" value="20" />

        <!-- 配置获取连接等待超时的时间 -->
        <property name="maxWait" value="60000" />

        <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
        <property name="timeBetweenEvictionRunsMillis" value="60000" />

        <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
        <property name="minEvictableIdleTimeMillis" value="300000" />

        <property name="validationQuery" value="SELECT 'x'" />
        <property name="testWhileIdle" value="true" />
        <property name="testOnBorrow" value="false" />
        <property name="testOnReturn" value="false" />

        <!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
        <property name="poolPreparedStatements" value="true" />
        <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />

        <!-- 连接泄漏处理。Druid提供了RemoveAbandanded相关配置,用来关闭长时间不使用的连接(例如忘记关闭连接)。 -->
        <property name="removeAbandoned" value="true" />
        <!-- 1800秒,也就是30分钟 -->
        <property name="removeAbandonedTimeout" value="1800" />
        <!-- 关闭abanded连接时输出错误日志 -->
        <property name="logAbandoned" value="true" />

        <!-- 配置监控统计拦截的filters, 监控统计:"stat",防SQL注入:"wall",组合使用: "stat,wall" -->
        <property name="filters" value="stat" />
    </bean>

通常来说,只需要修改initialSize、minIdle、maxActive。

如果用Oracle,则把poolPreparedStatements配置为true,mysql可以配置为false。分库分表较多的数据库,建议配置为false。

如果是maven项目,需要向pom.xml加入jar包依赖声明

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

有问题请查阅Druid wiki地址

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>

版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    5、Druid配置文件详细介绍以及示例

    4. **ioConfig**:配置数据源的详细信息,例如数据的读取和写入。 5. **tuningConfig**(可选):提供了优化摄取过程的参数,如分区规则和大小。 在 **dataSchema** 部分,有几个重要的配置项: - **dataSource**...

    2、Druid的入门示例(使用三种不同的方式摄入数据和提交任务)

    这通常涉及到编写JSON配置文件,指定数据源、数据格式、处理逻辑等,然后通过Druid的命令行工具来启动任务。这种方式更加适合自动化脚本和持续集成流程。 在实际应用中,Druid支持多种数据摄入方式,例如Hadoop...

    Spring Boot 入门 - 基础篇(11)- 数据源配置

    在本篇“Spring Boot入门 - 基础篇(11)- 数据源配置”中,我们将探讨如何在Spring Boot项目中配置数据源,以便连接到数据库并执行相关的CRUD操作。Spring Boot以其自动化配置和简化开发流程而受到广泛欢迎,它使得...

    Druid 入门

    Druid 提供了一种将数据源进行流式处理并实现实时分析的有效手段。 ##### 1.3 Druid 的设计原则 - **三大设计原则**:Druid 在设计时明确了三个核心原则,以确保其实时分析能力的强大和高效。 - **快速查询**:...

    Druid_1.0.9_jar包及配置文件.rar

    4. `druid.properties`:这是Druid的数据源配置文件,用于设置连接池的参数。比如最大连接数、最小连接数、超时时间、验证查询语句等。通过合理的配置,可以优化数据库连接的管理和使用,提高系统性能。 在Java Web...

    3、Druid的load data 示例(实时kafka数据和离线-本地或hdfs数据)

    通常,你可以通过编写 JSON 格式的索引任务配置文件来指定数据源、解析器等信息,然后使用 Druid 的 indexing service 来执行这个任务。数据解析器如“hadoopyString”可以处理文本数据,并将其转换为 Druid 可以...

    4、java操作druid api

    \n\n**一、需求与实现步骤**\n\n在本示例中,我们的目标是查询 Druid 数据源中的 `testdata` 表中的所有数据。这通常涉及到以下步骤:\n\n1. **导入依赖**:首先,我们需要在项目中引入 Druid JDBC 驱动的相关依赖。...

    springBoot+druid+mybatis+redis+logback

    用户需要按照文件的指示,配置相关组件,例如设置SpringBoot的启动类、配置Druid的数据源、MyBatis的Mapper文件和XML配置、Redis的连接信息以及Logback的日志配置,然后就可以运行和测试这个平台的各个功能了。

    druid简单教程

    - **name**:配置数据源名称,便于监控时区分不同的数据源。 - **jdbcUrl**:用于连接数据库的URL,不同数据库有不同的格式。 - **username** 和 **password**:连接数据库所需的用户名和密码。 - **...

    spring mybaitis 多数据源 多数据库连接资料及源代码.zip

    - 简书.html" 和 "SpringBoot和Mybatis配置多数据源连接多个数据库 - 简书.html":这两篇文章应该会以简书平台的格式,详细阐述Spring Boot和Mybatis的多数据源配置过程,适合初学者入门。 5. "SpringBoot+mybatis...

    spring-boot入门demo

    在本入门 demo 中,我们将探讨如何将 Spring Boot 与 MyBatis 和 Druid 数据源整合,实现一个轻量级、高效的数据库操作环境。 1. **Spring Boot 与 MyBatis 整合**: MyBatis 是一个优秀的持久层框架,它支持定制...

    简单Spring boot和druid监控demo

    接下来,配置Druid的数据源。在Spring Boot的配置文件`application.properties`或`application.yml`中,你可以设置Druid的相关属性,如数据库连接信息、最大最小连接数、超时时间等。一个简单的配置示例如下: ```...

    Spring Boot 整合Mybatis、Druid、PageHelper、Swagger 、AOP、过滤器、拦截器、thymeleaf 基础入门demo

    整合Druid到Spring Boot,我们需要在配置文件中指定Druid作为数据源,并配置相关的连接池参数,如最大连接数、最小空闲连接数等。同时,Druid还提供了Web监控页面,便于查看数据库连接状态。 3. **PageHelper分页...

    基于SpringBoot+druid+mysql毕业设计管理系统(含论文)

    接着,设置Druid的数据源配置,包括URL、用户名、密码、最大最小连接数等。在SpringBoot的配置文件application.properties或application.yml中,可以进一步定制Druid的监控和报警策略。 数据库设计是系统的核心,...

    springboot + druid

    最近项目中用到微服务提供ElasticSearch数据源,由于列可配置,采用JDBC的方式,查询很多资源,没有想要的,在别人的基础上自己调试成功了一套代码,采用最新的SpringBoot,并且用Junit可以调试。希望能够给新入门的...

    SpringBoot入门必学项目源码

    在项目中,你可以了解如何配置Druid数据源,以及它提供的监控统计功能。 5. **JSP**:JavaServer Pages是一种动态网页技术,用于创建交互式的Web应用。在Spring Boot中,虽然推荐使用Thymeleaf、Freemarker等模板...

    SpringBoot集成TDengine程序Demo

    - 创建TDengine的数据源配置,配置Druid连接池的相关参数,如URL、用户名、密码等。 - 编写TDengine的DAO层,利用JDBC接口进行数据操作,包括增删改查。 - 在Service层封装业务逻辑,调用DAO层的方法进行数据处理。 ...

    SpringBooot从入门到精通

    整合MyBatis涉及到依赖添加、数据源配置、Druid数据源的使用、脚本初始化、模块编码和集成。 11. 使用通用插件:Spring Boot允许使用通用插件来简化开发,比如MyBatis Generator可用于生成Mapper接口及XML文件,而...

    spring boot搭建(二)

    在Spring Boot应用中,通过在数据源配置中插入P6Spy的代理驱动,我们可以获取到详细的SQL语句执行信息,包括执行时间、结果集大小等,这对于性能优化和问题排查非常有帮助。 现在,让我们来看一下文件列表中的`...

    Mybits入门实例(实例免费下载!)

    在`mybatis-config.xml`中,你需要配置数据源,例如使用Druid或Apache DBCP等。数据源定义了如何连接到数据库,包括数据库URL、用户名、密码等信息。同时,你还需要配置事务管理器,MyBatis支持JDBC和Spring两种类型...

Global site tag (gtag.js) - Google Analytics