Druid的使用-详细配置
2015-05-13 22:17
260 查看
最近在研究一个开源的项目中,发现项目使用的是Druid JDBC组件,这跟我们平常用的c3po不同,所以研究了下。
先来看对Druid的介绍:
Druid是一个JDBC组件,它包括三部分:
DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系。
DruidDataSource 高效可管理的数据库连接池。
SQLParser
官方文档地址:https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98
通过这里,可以看到Druid自带了监控统计页面,同时Druid还可以通过配置来防范SQL注入和数据库连接泄露等,应该说功能是相当的强大的。
环境说明:
开发工具:myeclipse9.0
JDK版本:1.7
项目:javaWeb+Maven3.0.5+MySQL
使用步骤:
1.配置Maven,下载Druid jar包
2.配置DataSource
3.在web.xml里面添加如下配置:
到这里,就可以启动工程,然后访问Druid自带的监控界面看看监控效果了!应该说,整个配置很简单,而且替换c3po也非常的容易
因为我这是测试,所以没有配置监控界面的访问控制,线上使用的话,记得开启访问控制哦!
先来看对Druid的介绍:
Druid是一个JDBC组件,它包括三部分:
DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系。
DruidDataSource 高效可管理的数据库连接池。
SQLParser
官方文档地址:https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98
通过这里,可以看到Druid自带了监控统计页面,同时Druid还可以通过配置来防范SQL注入和数据库连接泄露等,应该说功能是相当的强大的。
环境说明:
开发工具:myeclipse9.0
JDK版本:1.7
项目:javaWeb+Maven3.0.5+MySQL
使用步骤:
1.配置Maven,下载Druid jar包
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.14</version> </dependency>
2.配置DataSource
<bean id="stat-filter" class="com.alibaba.druid.filter.stat.StatFilter"> <property name="slowSqlMillis" value="10000" /> <property name="logSlowSql" value="true" /> </bean> <bean id="log-filter" class="com.alibaba.druid.filter.logging.Log4jFilter"> <property name="statementExecutableSqlLogEnable" value="true" /> <property name="resultSetLogEnabled" value="false" /> </bean> <bean id="wall-filter-config" class="com.alibaba.druid.wall.WallConfig" init-method="init"> <!-- 指定配置装载的目录 --> <property name="dir" value="META-INF/druid/wall/mysql" /> <property name="truncateAllow" value="false" /> </bean> <bean id="wall-filter" class="com.alibaba.druid.wall.WallFilter"> <property name="dbType" value="mysql" /> <property name="logViolation" value="true" /> <property name="throwException" value="false"/> <property name="config" ref="wall-filter-config" /> </bean> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="url" value="${datasource.url}" /> <property name="username" value="${datasource.username}" /> <property name="password" value="${datasource.password}" /> <!-- 配置初始化大小、最小、最大 --> <property name="initialSize" value="1" /> <property name="minIdle" value="1" /> <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" /> <!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 --> <property name="proxyFilters"> <list> <ref bean="stat-filter" /> <ref bean="log-filter" /> <ref bean="wall-filter" /> </list> </property> </bean>
3.在web.xml里面添加如下配置:
<!-- druid --> <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> <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>
到这里,就可以启动工程,然后访问Druid自带的监控界面看看监控效果了!应该说,整个配置很简单,而且替换c3po也非常的容易
因为我这是测试,所以没有配置监控界面的访问控制,线上使用的话,记得开启访问控制哦!
相关文章推荐
- 使用SQLServer2000 发送邮件详细配置过程
- mysql安装图解(详细步骤),配置,相关图形工具介绍及使用,中文支持
- 使用SQLServer2000 发送邮件详细配置过程
- 使用SQLServer2000 发送邮件详细配置过程
- 关于使用Spring和hibernate开发web程序的配置说明和简单实例的详细说明
- 使用SQLServer2000 发送邮件详细配置过程
- 使用SQLServer2000 发送邮件详细配置过程
- 使用SQLServer2000 发送邮件详细配置过程
- 使用Tomcat-5.5.20配置数据库连接池详细介绍
- 使用Tomcat-5.5.20配置数据库连接池详细介绍
- 使用Tomcat-5.5.20配置数据库连接池详细介绍
- 使用Tomcat-5.5.20配置数据库连接池详细介绍
- samba 软件包的详细安装、配置及权限使用 推荐
- SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息
- 使用SQLServer2000 发送邮件详细配置过程
- 使用Tomcat-5.5.20配置数据库连接池详细介绍
- 使用SQLServer2000 发送邮件详细配置过程
- 在JSP环境中配置使用fckeditor详细讲解
- 使用SQLServer2000 发送邮件详细配置过程