SpringBootSpringBoot框架中如何向web.xml中添加配置(以配置DataSource的后台监控功能为例)
Posted The Gao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBootSpringBoot框架中如何向web.xml中添加配置(以配置DataSource的后台监控功能为例)相关的知识,希望对你有一定的参考价值。
SpringBoot框架中已经没有web.xml文件了,那么如何向web.xml中添加配置呢?比如如何配置filter等?
1.通过application.yaml文件设置配置详情。需要引入log4j的maven依赖。
spring:
datasource:
username: root
password:
url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf-8
driver-class-name: com.mysql.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
#druid 数据源专有配置
initialSize: 5
minIdle: 5
maxActive: 20
maxWait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
#配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入
filters: stat,wall,log4j
maxPoolPreparedStatementPerConnectionSize: 20
useGlobalDataSourceStat: true
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
2.新建MyConfig类,并标注@Configuration注解。
3.通过@Bean、@ConfigurationProperties注解绑定配置文件。
@Configuration
public class MyDataSourceConfig
@ConfigurationProperties(prefix="spring.datasource")
@Bean
public DataSource getDataSource()
return new DruidDataSource();
//添加后台监控功能
@Bean
public ServletRegistrationBean statViewServlet()
ServletRegistrationBean<StatViewServlet> bean = new ServletRegistrationBean<>(new StatViewServlet(),"/druid/*");
Map<String, String> initParams = new HashMap<>();
initParams.put("loginUsername", "root");
initParams.put("loginPassword", "12581.gzh");
bean.setInitParameters(initParams);
return bean;
SpringBoot框架中内置了Servlet,因此没有web.xml文件了。想要实现与MVC相关的功能,就通过ServletRegistrationBean这个泛型类。
使用示例:ServletRegistrationBean<StatViewServlet> bean = new ServletRegistrationBean<>(new StatViewServlet(),"/druid/*");
以上是关于SpringBootSpringBoot框架中如何向web.xml中添加配置(以配置DataSource的后台监控功能为例)的主要内容,如果未能解决你的问题,请参考以下文章