Druid(德鲁伊)
config配置
//德鲁伊Druid数据源的配置类//@Configurationpublic class MyDruidDataSourceConfig {//在IOC容器中注入DruidDataSource数据源实例bean,将会替换默认数据源的组件@Bean//配置绑定 , 在yaml文件中直接使用指定前缀进行操作属性@ConfigurationProperties(prefix = "spring.datasource")public DruidDataSource druidDataSource() throws SQLException {DruidDataSource druidDataSource = new DruidDataSource();//用于统计监控信息;如SQL监控、URI监控druidDataSource.setFilters("wall,stat,slf4j");return druidDataSource;}//配置StatViewServlet组件,提供监控信息展示的html页面@Beanpublic ServletRegistrationBean<StatViewServlet> servletRegistrationBean(){StatViewServlet statViewServlet = new StatViewServlet();ServletRegistrationBean<StatViewServlet> servletRegistrationBean = new ServletRegistrationBean<>(statViewServlet,"/druid/*");//配置访问的用户名和密码servletRegistrationBean.addInitParameter("loginUsername","admin");servletRegistrationBean.addInitParameter("loginPassword","admin");//设置是否可以重置SQL记录,禁止清空数据falseservletRegistrationBean.addInitParameter("resetEnable","false");return servletRegistrationBean;}//WebStatFilter 用于采集web-jdbc关联监控的数据。@Beanpublic FilterRegistrationBean<WebStatFilter> filterRegistrationBean(){WebStatFilter webStatFilter = new WebStatFilter();FilterRegistrationBean<WebStatFilter> filterRegistrationBean = new FilterRegistrationBean<>();//设置过滤器filterRegistrationBean.setFilter(webStatFilter);//设置过滤路径filterRegistrationBean.addUrlPatterns("/*");//设置放行的路径filterRegistrationBean.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");return filterRegistrationBean;}}
yaml配置
#配置jdbcspring:datasource:username: rootpassword: rooturl: jdbc:mysql://localhost:3306/test?unicode=true&characterEncode=utf8&serverTimezone=GMT%2B8driver-class-name: com.mysql.cj.jdbc.Driver#配置德鲁伊druid:aop-patterns: com.nl.boot#开启SQL监控、防火墙监控、日志监控filters: stat,wall,slf4j#配置statViewServletstat-view-servlet:enabled: trueurl-pattern: /druid/*login-username: adminlogin-password: adminreset-enable: false#配置WebStatFilter 用于采集web-jdbc关联监控的数据web-stat-filter:#开启enabled: true#设置过滤路径url-pattern: /*#设置排除在外的路径exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"filter: #配置细节wall: #防火墙config:selelct-allow: true #不允许查询insert-allow: true #允许插入delete-allow: true #允许删除#stat SQL监控,对上面filters里面的stat的详细配置stat:enabled: truelog-slow-sql: true #开启慢日志查询slow-sql-millis: 1000 #查询SQL时,超过1s,计算慢,将会记录进慢日志中
二者只能用一个