druid控制台无法监控sql问题
Posted lideqiang0909
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了druid控制台无法监控sql问题相关的知识,希望对你有一定的参考价值。
springboot+mybatisplus+druid按照教程配置好之后,druid控制台监控sql页面无数据,filter类名为空,貌似没有注册进去去,代码如下:
@Configuration
public class DruidConfiguration
@Bean
public ServletRegistrationBean druidServlet()
ServletRegistrationBean<Servlet> bean = new ServletRegistrationBean<>(new StatViewServlet(),"/druid/*");
Map<String,String> map = new HashMap<>();
map.put("loginUsername","admin");
map.put("loginPassword","123456");
map.put("deny","192.168.47.156");
bean.setInitParameters(map);
return bean;
@Bean
public FilterRegistrationBean filterRegistrationBean()
FilterRegistrationBean<Filter> bean = new FilterRegistrationBean<>();
bean.setFilter(new WebStatFilter());
Map<String,String> map = new HashMap<>();
map.put("exclusions","*.js,*.css,/druid/*");
//拦截所有请求
bean.setUrlPatterns(Arrays.asList("/*"));
bean.setInitParameters(map);
return bean;
@Bean
public WallFilter wallFilter()
WallFilter wallFilter = new WallFilter();
wallFilter.setConfig(wallConfig());
return wallFilter;
@Bean
public WallConfig wallConfig()
WallConfig wallConfig = new WallConfig();
wallConfig.setMultiStatementAllow(true);
//允许一次执行多条语句
wallConfig.setNoneBaseStatementAllow(true);
//是否允许非以上基本语句的其他语句
wallConfig.setStrictSyntaxCheck(false);
//是否进行严格的语法检测
return wallConfig;
@Bean(name="dataSource")
public DataSource dataSource()
return new DruidDataSource();
// 配置事物管理器
@Bean(name="transactionManager")
public DataSourceTransactionManager transactionManager()
return new DataSourceTransactionManager(dataSource());
这段只有一个wallfilter能在控制台显示,statfilter无效
解决办法:
在jvm启动参数中加上:
-Ddruid.filters=mergeStat -Ddruid.useGlobalDataSourceStat=true,
我的是这个情况.
原文地址:https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98
以上是关于druid控制台无法监控sql问题的主要内容,如果未能解决你的问题,请参考以下文章
真难!通过源码告诉你阿里的数据库连接池Druid为啥如此牛逼!
SpringBoot系列七:SpringBoot 整合 MyBatis(配置 druid 数据源配置 MyBatis事务控制druid 监控)