SpringBoot引入druid连接池,并且开启数据监控
2020-01-12 19:18
351 查看
引入druid连接池
1.引入druid的相关依赖,并且引入log4j日志处理
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.10</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency>
2.在yml中配置连接池
datasource:
username: xxx
password: xxx
url: jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
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,去掉后监控界面sql无法统计,'wall’用于防火墙
filters: stat,wall,log4j
maxPoolPreparedStatementPerConnectionSize: 20
useGlobalDataSourceStat: true
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
具体参数如下
3.配置log4j日志信息处理,注意,这里log4j放在resources文件夹下,文件名为log4j.properties
log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
4.创建dataSourceConfig类作连接池的配置类,注意点:这里必须使用前缀形式,这样属性会自动注入
@Configuration public class DruidConfig { @Bean @ConfigurationProperties(prefix = "spring.datasource") public DataSource druid(){ DruidDataSource druidDataSource = new DruidDataSource(); return druidDataSource; } }
5.配置数据监控
//1.配置servlet @Bean public ServletRegistrationBean statViewServlet(){ ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");//这里是访问druid的地址 HashMap<Object, Object> hashMap = new HashMap<>(); //druid数据监控的用户和密码 hashMap.put("loginUsername","admin"); hashMap.put("loginPassword","123456"); hashMap.put("allow","");//允许所有 bean.setInitParameters(hashMap); return bean; } //配置过滤器,配置到达需要监控哪些,不需要监控哪些 @Bean public FilterRegistrationBean webStatFilter(){ FilterRegistrationBean bean = new FilterRegistrationBean(new WebStatFilter()); HashMap<Object, Object> hashMap = new HashMap<>(); //这里排除一些不需要监控的资源 hashMap.put("exclusions","*.js,*.css,/druid/*"); bean.setInitParameters(hashMap); bean.setUrlPatterns(Arrays.asList("/*")); return bean; }
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- mybatis使用spring-druid数据源连接池配置log4j打印sql语句以及开启监控平台
- 阿里druid 连接池监控数据自定义存储
- springboot整合druid并开启监控
- Spring Boot整合Druid连接池开启数据库监控功能
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(九)数据层优化-jdbc连接池简述、druid简介
- Druid连接池基本配置及监控配置
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(十一)数据层优化-druid监控及慢sql记录
- Druid连接池及监控在spring中的配置
- JDBC连接池、监控组件 Druid
- druid连接池监控
- Druid连接池及监控在Spring配置如下:
- springboot集成druid实现监控功能显示
- spring配置druid连接池和监控数据库访问性能
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(九)数据层优化-jdbc连接池简述、druid简介
- spring-boot 连接池 druid 的配置及监控
- Druid连接池及监控在spring中的配置
- python脚本获取zabbix监控数据,并且通过邮件发送
- druid 配置监控界面和开启spring支持
- spring boot druid连接池监控配置
- JDBC连接池、监控组件 Druid