阿里巴巴数据源Druid在tomcat中的配置
这里只说需要的配置文件,不讲具体的项目,仅作为备忘。
pom.xml文件添加
- <!-- druid -->
- <dependency>
- <groupId>com.alibaba</groupId>
- <artifactId>druid</artifactId>
- <version>0.2.9</version>
- </dependency>
和spring整合时配置数据源:
- <!-- 配置数据源 -->
- <bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
- init-method="init" destroy-method="close">
- <property name="url" value="${jdbc_url}" />
- <property name="username" value="${jdbc_username}" />
- <property name="password" value="${jdbc_password}" />
- <!-- 初始化连接大小 -->
- <property name="initialSize" value="0" />
- <!-- 连接池最大使用连接数量 -->
- <property name="maxActive" value="20" />
- <!-- 连接池最大空闲 -->
- <property name="maxIdle" value="20" />
- <!-- 连接池最小空闲 -->
- <property name="minIdle" value="0" />
- <!-- 获取连接最大等待时间 -->
- <property name="maxWait" value="60000" />
- <!-- <property name="poolPreparedStatements" value="true" /> <property
- name="maxPoolPreparedStatementPerConnectionSize" value="33" /> -->
- <property name="validationQuery" value="${validationQuery}" />
- <property name="testOnBorrow" value="false" />
- <property name="testOnReturn" value="false" />
- <property name="testWhileIdle" value="true" />
- <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
- <property name="timeBetweenEvictionRunsMillis" value="60000" />
- <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
- <property name="minEvictableIdleTimeMillis" value="25200000" />
- <!-- 打开removeAbandoned功能 -->
- <property name="removeAbandoned" value="true" />
- <!-- 1800秒,也就是30分钟 -->
- <property name="removeAbandonedTimeout" value="1800" />
- <!-- 关闭abanded连接时输出错误日志 -->
- <property name="logAbandoned" value="true" />
- <!-- 监控数据库 -->
- <!-- <property name="filters" value="stat" /> -->
- <property name="filters" value="mergeStat" />
- </bean>
config文件:
- #MySQL \u7684\u914D\u7F6E
- hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
- driverClassName=com.mysql.jdbc.Driver
- validationQuery=SELECT 1
- jdbc_url=jdbc:mysql://localhost:3306/localtest?useUnicode=true&characterEncoding=utf-8
- jdbc_username=root
- jdbc_password=123456
- hibernate.hbm2ddl.auto=update
- hibernate.show_sql=true
- hibernate.format_sql=true
web.xml配置:
启用数据源监控及配置用户名密码
- <!-- 连接池 启用 Web 监控统计功能 start-->
- <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 ,*.map,/druid/*</param-value >
- </init-param >
- <init-param>
- <param-name>sessionStatMaxCount</param-name>
- <param-value>2000</param-value>
- </init-param>
- <init-param>
- <param-name>sessionStatEnable</param-name>
- <param-value>true</param-value>
- </init-param>
- <init-param>
- <param-name>principalSessionName</param-name>
- <param-value>session_user_key</param-value>
- </init-param>
- <init-param>
- <param-name>profileEnable</param-name>
- <param-value>true</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>admin</param-value>
- </init-param>
- </servlet>
- <servlet-mapping>
- <servlet-name>DruidStatView</servlet-name>
- <url-pattern>/druid/*</url-pattern>
- </servlet-mapping>
- <!-- http://ip:port/projectname/druid/index.html -->
- <!-- 连接池 启用 Web 监控统计功能 end-->
配置后访问会出现登录页面,输入用户名密码即可。如果不需要用户名密码,把所有的<init-param>删除即可,除了下面这个
- <init-param>
- <param-name>exclusions</param-name >
- <param-value>*.js ,*.gif ,*.jpg ,*.png ,*.css ,*.ico ,*.map,/druid/*</param-value >
- </init-param >
和springSecurity整合时,在Chrome中打开监控界面会直接显示源代码,比对配置springsecurity配置前后的response Headers,发现多了下面红框中的header设置
经过查询,主要是X-Content-Type-Options这个的原因,所以可以在springsecurity中配置头信息,不添加没有必要的浏览器相应头信息
- <headers defaults-disabled="true" >
- <cache-control/>
- </headers>
根据业务需求添加特定的头信息即可。设置完毕后,重启tomcat,用chrome可以显示正常的监控页面了。
阿里巴巴数据源Druid在tomcat中的配置的更多相关文章
- Tomcat中相关配置详解
tomcat的相关配置 server.xml <Server port="8005" shutdown="SHUTDOWN"> <!-- 属性 ...
- Java进阶(十)java tomcat中context配置
Tomcat中Context的配置 问题: java tomcat中<context> docBase属性是什么意思? 元素的属性: path:指定访问该Web应用的URL入口. doc ...
- Druid 在spring中的配置
Spring配置中dataSource配置 <bean id="dataSource" class="com.alibaba.druid.pool.DruidDat ...
- DB2数据源在Spring环境中的配置
简单记录一下,以备不时之需. DB2的java驱动包可以在这里下载:http://pan.baidu.com/s/1gOoEJ DB2数据源的配置如下,粗体字部分是需要根据实际情况修改的: <b ...
- tomcat中如何配置虚拟路径
第一步:打开server.xml配置文件.在Host节点里写上该行代码: <Context path="/upload" docBase="E:\upload&qu ...
- 数据库连接池在Tomcat中的几种配置方法
数据库连接是一种关键的有限的昂贵的资源,这在多用户网页应用程序中体现的尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标,数据库连接池正是针对这个问题提出的. ...
- Tomcat连接池配置与实现/JNDI
方法一: 在Tomcat的conf/context.xml中配置在Tomcat\apache-tomcat-6.0.33\conf目录下的context.xml文件中配置默认值如下: <?xml ...
- Tomcat server.xml配置
参考文献:http://www.cnblogs.com/xdp-gacl/p/3734395.html 一.Tomcat配置虚拟主机 方法:在conf/server.xml里配置Host元素,其中na ...
- CAS 在 Tomcat 中实现单点登录
单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统 中,用户只需要登录一次就可以访问所有相互信任的应用系统.CA ...
随机推荐
- 漏洞复现——httpd换行解析漏洞
漏洞原理: 在解析php文件时,1.php\x0A这种格式的文件将会被认为php文件解析,进而可以绕过一些服务器的安全策略. 漏洞版本: 2.4.0~2.4.29 漏洞复现: 复现该漏洞是利用dock ...
- Flask框架整理
Flask基础部分 Flask目录结构(蓝图) views中存放蓝图,每个蓝图也可以有自己的模板,用蓝图对不同功能的视图函数进行隔离,类似于django中的app pro_flask包的init.py ...
- 完美解决xhost +报错: unable to open display "" 装oracle的时候总是在弹出安装界面的时候出错
详细很多朋友在装oracle的时候总是在弹出安装界面的时候出错,界面就是蹦不出来. oracle安装 先切换到root用户,执行xhost + 然后再切换到oracle用户,执行export DISP ...
- python 利用selectors实现异步I/O
它的功能与linux的epoll,还是select模块,poll等类似:实现高效的I/O multiplexing, 常用于非阻塞的socket的编程中: 简单介绍一下这个模块,更多内容查看 pyt ...
- 再次提供一个纯粹通过pl/sql解析json的方法。
在github上面有一个叫pljson的项目,该项目就是用pl/sql 来解析json的. 项目地址:pljson(需翻|强),如果翻不了强的同学,我在国内克隆了一个副本,不定期同步更新 pljson ...
- Centos7 systemctl和防火墙firewalld命令(参考https://www.cnblogs.com/marso/archive/2018/01/06/8214927.html)
一.防火墙的开启.关闭.禁用命令 (1)设置开机启用防火墙:systemctl enable firewalld.service (2)设置开机禁用防火墙:systemctl disable fire ...
- TestLink测试管理工具的使用举例—第一篇
本博客用来详细说明TestLink测试管理工具的使用方法,前两篇博客已经详细说明了TestLink工具的下载,安装及基本登录功能,本篇开始说明其工具的具体使用! 下载安装TestLink工具之后,我们 ...
- find语法
语法 find path -option [ -print ] [ -exec -ok command ] {} \; 参数说明 : find 根据下列规则判断 path 和 expression,在 ...
- 过滤函数 filter
filter(lambda x:x.endswith('居'),house_type_list) 过滤函数,作用就是将“以‘居’结尾的字段都过滤出来,其它的字段都删除掉.”
- React-Native新列表组件FlatList和SectionList学习 | | 联动列表实现
React-Native在0.43推出了两款新的列表组件:FlatList(高性能的简单列表组件)和SectionList(高性能的分组列表组件). 从官方上它们都支持常用的以下功能: 完全跨平台. ...