这里只说需要的配置文件,不讲具体的项目,仅作为备忘。

pom.xml文件添加

  1. <!-- druid -->
  2. <dependency>
  3. <groupId>com.alibaba</groupId>
  4. <artifactId>druid</artifactId>
  5. <version>0.2.9</version>
  6. </dependency>

和spring整合时配置数据源:

  1. <!-- 配置数据源 -->
  2. <bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
  3. init-method="init" destroy-method="close">
  4. <property name="url" value="${jdbc_url}" />
  5. <property name="username" value="${jdbc_username}" />
  6. <property name="password" value="${jdbc_password}" />
  7.  
  8. <!-- 初始化连接大小 -->
  9. <property name="initialSize" value="0" />
  10. <!-- 连接池最大使用连接数量 -->
  11. <property name="maxActive" value="20" />
  12. <!-- 连接池最大空闲 -->
  13. <property name="maxIdle" value="20" />
  14. <!-- 连接池最小空闲 -->
  15. <property name="minIdle" value="0" />
  16. <!-- 获取连接最大等待时间 -->
  17. <property name="maxWait" value="60000" />
  18.  
  19. <!-- <property name="poolPreparedStatements" value="true" /> <property
  20. name="maxPoolPreparedStatementPerConnectionSize" value="33" /> -->
  21.  
  22. <property name="validationQuery" value="${validationQuery}" />
  23. <property name="testOnBorrow" value="false" />
  24. <property name="testOnReturn" value="false" />
  25. <property name="testWhileIdle" value="true" />
  26.  
  27. <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
  28. <property name="timeBetweenEvictionRunsMillis" value="60000" />
  29. <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
  30. <property name="minEvictableIdleTimeMillis" value="25200000" />
  31.  
  32. <!-- 打开removeAbandoned功能 -->
  33. <property name="removeAbandoned" value="true" />
  34. <!-- 1800秒,也就是30分钟 -->
  35. <property name="removeAbandonedTimeout" value="1800" />
  36. <!-- 关闭abanded连接时输出错误日志 -->
  37. <property name="logAbandoned" value="true" />
  38.  
  39. <!-- 监控数据库 -->
  40. <!-- <property name="filters" value="stat" /> -->
  41. <property name="filters" value="mergeStat" />
  42. </bean>

config文件:

  1. #MySQL \u7684\u914D\u7F6E
  2. hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
  3. driverClassName=com.mysql.jdbc.Driver
  4. validationQuery=SELECT 1
  5. jdbc_url=jdbc:mysql://localhost:3306/localtest?useUnicode=true&characterEncoding=utf-8
  6. jdbc_username=root
  7. jdbc_password=123456
  8.  
  9. hibernate.hbm2ddl.auto=update
  10. hibernate.show_sql=true
  11. hibernate.format_sql=true

web.xml配置:

启用数据源监控及配置用户名密码

  1. <!-- 连接池 启用 Web 监控统计功能 start-->
  2. <filter>
  3. <filter-name>DruidWebStatFilter</filter-name >
  4. <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class >
  5. <init-param>
  6. <param-name>exclusions</param-name >
  7. <param-value>*.js ,*.gif ,*.jpg ,*.png ,*.css ,*.ico ,*.map,/druid/*</param-value >
  8. </init-param >
  9. <init-param>
  10. <param-name>sessionStatMaxCount</param-name>
  11. <param-value>2000</param-value>
  12. </init-param>
  13. <init-param>
  14. <param-name>sessionStatEnable</param-name>
  15. <param-value>true</param-value>
  16. </init-param>
  17. <init-param>
  18. <param-name>principalSessionName</param-name>
  19. <param-value>session_user_key</param-value>
  20. </init-param>
  21. <init-param>
  22. <param-name>profileEnable</param-name>
  23. <param-value>true</param-value>
  24. </init-param>
  25. </filter >
  26. <filter-mapping>
  27. <filter-name>DruidWebStatFilter</filter-name >
  28. <url-pattern>/*</url-pattern >
  29. </filter-mapping >
  30. <servlet>
  31. <servlet-name>DruidStatView</servlet-name >
  32. <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
  33. <init-param>
  34. <!-- 允许清空统计数据 -->
  35. <param-name>resetEnable</param-name>
  36. <param-value>true</param-value>
  37. </init-param>
  38. <init-param>
  39. <!-- 用户名 -->
  40. <param-name>loginUsername</param-name>
  41. <param-value>admin</param-value>
  42. </init-param>
  43. <init-param>
  44. <!-- 密码 -->
  45. <param-name>loginPassword</param-name>
  46. <param-value>admin</param-value>
  47. </init-param>
  48. </servlet>
  49. <servlet-mapping>
  50. <servlet-name>DruidStatView</servlet-name>
  51. <url-pattern>/druid/*</url-pattern>
  52. </servlet-mapping>
  53. <!-- http://ip:port/projectname/druid/index.html -->
  54. <!-- 连接池 启用 Web 监控统计功能 end-->

配置后访问会出现登录页面,输入用户名密码即可。如果不需要用户名密码,把所有的<init-param>删除即可,除了下面这个

  1. <init-param>
  2. <param-name>exclusions</param-name >
  3. <param-value>*.js ,*.gif ,*.jpg ,*.png ,*.css ,*.ico ,*.map,/druid/*</param-value >
  4. </init-param >

和springSecurity整合时,在Chrome中打开监控界面会直接显示源代码,比对配置springsecurity配置前后的response Headers,发现多了下面红框中的header设置

经过查询,主要是X-Content-Type-Options这个的原因,所以可以在springsecurity中配置头信息,不添加没有必要的浏览器相应头信息

  1. <headers defaults-disabled="true" >
  2. <cache-control/>
  3. </headers>

根据业务需求添加特定的头信息即可。设置完毕后,重启tomcat,用chrome可以显示正常的监控页面了。

阿里巴巴数据源Druid在tomcat中的配置的更多相关文章

  1. Tomcat中相关配置详解

    tomcat的相关配置 server.xml <Server port="8005" shutdown="SHUTDOWN"> <!-- 属性 ...

  2. Java进阶(十)java tomcat中context配置

    Tomcat中Context的配置 问题: java tomcat中<context> docBase属性是什么意思? 元素的属性: path:指定访问该Web应用的URL入口.  doc ...

  3. Druid 在spring中的配置

    Spring配置中dataSource配置 <bean id="dataSource" class="com.alibaba.druid.pool.DruidDat ...

  4. DB2数据源在Spring环境中的配置

    简单记录一下,以备不时之需. DB2的java驱动包可以在这里下载:http://pan.baidu.com/s/1gOoEJ DB2数据源的配置如下,粗体字部分是需要根据实际情况修改的: <b ...

  5. tomcat中如何配置虚拟路径

    第一步:打开server.xml配置文件.在Host节点里写上该行代码: <Context path="/upload" docBase="E:\upload&qu ...

  6. 数据库连接池在Tomcat中的几种配置方法

    数据库连接是一种关键的有限的昂贵的资源,这在多用户网页应用程序中体现的尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标,数据库连接池正是针对这个问题提出的. ...

  7. Tomcat连接池配置与实现/JNDI

    方法一: 在Tomcat的conf/context.xml中配置在Tomcat\apache-tomcat-6.0.33\conf目录下的context.xml文件中配置默认值如下: <?xml ...

  8. Tomcat server.xml配置

    参考文献:http://www.cnblogs.com/xdp-gacl/p/3734395.html 一.Tomcat配置虚拟主机 方法:在conf/server.xml里配置Host元素,其中na ...

  9. CAS 在 Tomcat 中实现单点登录

    单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统 中,用户只需要登录一次就可以访问所有相互信任的应用系统.CA ...

随机推荐

  1. 漏洞复现——httpd换行解析漏洞

    漏洞原理: 在解析php文件时,1.php\x0A这种格式的文件将会被认为php文件解析,进而可以绕过一些服务器的安全策略. 漏洞版本: 2.4.0~2.4.29 漏洞复现: 复现该漏洞是利用dock ...

  2. Flask框架整理

    Flask基础部分 Flask目录结构(蓝图) views中存放蓝图,每个蓝图也可以有自己的模板,用蓝图对不同功能的视图函数进行隔离,类似于django中的app pro_flask包的init.py ...

  3. 完美解决xhost +报错: unable to open display "" 装oracle的时候总是在弹出安装界面的时候出错

    详细很多朋友在装oracle的时候总是在弹出安装界面的时候出错,界面就是蹦不出来. oracle安装 先切换到root用户,执行xhost + 然后再切换到oracle用户,执行export DISP ...

  4. python 利用selectors实现异步I/O

    它的功能与linux的epoll,还是select模块,poll等类似:实现高效的I/O multiplexing,  常用于非阻塞的socket的编程中: 简单介绍一下这个模块,更多内容查看 pyt ...

  5. 再次提供一个纯粹通过pl/sql解析json的方法。

    在github上面有一个叫pljson的项目,该项目就是用pl/sql 来解析json的. 项目地址:pljson(需翻|强),如果翻不了强的同学,我在国内克隆了一个副本,不定期同步更新 pljson ...

  6. Centos7 systemctl和防火墙firewalld命令(参考https://www.cnblogs.com/marso/archive/2018/01/06/8214927.html)

    一.防火墙的开启.关闭.禁用命令 (1)设置开机启用防火墙:systemctl enable firewalld.service (2)设置开机禁用防火墙:systemctl disable fire ...

  7. TestLink测试管理工具的使用举例—第一篇

    本博客用来详细说明TestLink测试管理工具的使用方法,前两篇博客已经详细说明了TestLink工具的下载,安装及基本登录功能,本篇开始说明其工具的具体使用! 下载安装TestLink工具之后,我们 ...

  8. find语法

    语法 find path -option [ -print ] [ -exec -ok command ] {} \; 参数说明 : find 根据下列规则判断 path 和 expression,在 ...

  9. 过滤函数 filter

    filter(lambda x:x.endswith('居'),house_type_list) 过滤函数,作用就是将“以‘居’结尾的字段都过滤出来,其它的字段都删除掉.”

  10. React-Native新列表组件FlatList和SectionList学习 | | 联动列表实现

    React-Native在0.43推出了两款新的列表组件:FlatList(高性能的简单列表组件)和SectionList(高性能的分组列表组件). 从官方上它们都支持常用的以下功能: 完全跨平台. ...