Druid 数据库连接池监控配置(web项目)
Spring数据源配置:
<!-- 数据源 --> <!--<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">--> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="driverClassName" value="${dataSource.driverClassName}"/> <property name="url" value="${dataSource.url}"/> <property name="username" value="${dataSource.username}"/> <property name="password" value="${dataSource.password}"/> <property name="maxActive" value="${dataSource.maxActive}"/> <property name="initialSize" value="${dataSource.initialSize}"></property> <property name="validationQuery" value="${dataSource.validationQuery}"/> <!--申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效--> <property name="testWhileIdle" value="${dataSource.testWhileIdle}"/> <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 --> <property name="timeBetweenEvictionRunsMillis" value="${dataSource.timeBetweenEvictionRunsMillis}"/> <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 --> <property name="minEvictableIdleTimeMillis" value="${dataSource.minEvictableIdleTimeMillis}"/> <!--申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。--> <property name="testOnBorrow" value="${dataSource.testOnBorrow}"/> <!--归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能--> <property name="testOnReturn" value="${dataSource.testOnReturn}"/> <!-- 打开PSCache,并且指定每个连接上PSCache的大小 --> <!--是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql5.5以下的版本中没有PSCache功能,建议关闭掉。5.5及以上版本有PSCache,建议开启。--> <property name="poolPreparedStatements" value="${dataSource.poolPreparedStatements}"/> <property name="maxPoolPreparedStatementPerConnectionSize" value="${dataSource.maxPoolPreparedStatementPerConnectionSize}"/> <!-- 配置监控统计拦截的filters merge:合并为参数化sql wall:防御sql注入--> <property name="filters" value="${dataSource.filters}"/> <!--日志输出执行慢的SQL--> <property name="connectionProperties" value="${dataSource.connectionProperties}" /> </bean>
web.xml配置:
<servlet> <servlet-name>DruidStatView</servlet-name> <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>DruidStatView</servlet-name> <url-pattern>/druid/*</url-pattern> </servlet-mapping>
访问:
http://host:port/project/druid