springBootday07

    科技2024-04-16  97

    springBoot使用Druid

    1.application.yml的编写

    spring: datasource: username: root password: 123456 url: jdbc:mysql://192.168.0.113:3306/jdbc?serverTimezone=GMT%2B8 driver-class-name: com.mysql.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,Log maxPoolPreparedStatementPerConnectionSize: 20 useGlobalDataSourceStat: true connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

    2.必须导入spring.datasource.initialization-mode=always

    2.在config编写使用自己导入的Druid

    @Configuration public class DruidConfig { @Bean @ConfigurationProperties(prefix = "spring.datasource") public DataSource druid(){ return new DruidDataSource(); } //配置Druid监控 //1.配置一个管理后台的servlet /** * ServletRegistrationBean定制的 Servlet 类。 * 按照 Servlet 的常规写法,实现 doGet 和 doPost 方法即 */ //Druid内置提供了一个StatViewServlet用于展示Druid的统计信息。 // //这个StatViewServlet的用途包括: // //提供监控信息展示的html页面 //提供监控信息的JSON API @Bean public ServletRegistrationBean statViewServlet(){ ServletRegistrationBean bean=new ServletRegistrationBean(new StatViewServlet(),"/druid/*"); Map<String,String> initParams=new HashMap<>(); initParams.put("loginUsername","admin"); initParams.put("loginPassword","123456"); initParams.put("allow",""); initParams.put("deny","192.168.0.104"); bean.setInitParameters(initParams); return bean; } //2.配置一个web监控的filter @Bean public FilterRegistrationBean webStatFilter(){ FilterRegistrationBean bean = new FilterRegistrationBean(); bean.setFilter(new WebStatFilter()); Map<String,String> initParams=new HashMap<>(); initParams.put("exclusions","*.js,*.css,/druid/*"); bean.setInitParameters(initParams); bean.setUrlPatterns(Arrays.asList("/*")); return bean; } }

    3.测试 可以访问

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5ta6JinL-1602044039474)(C:\Users\杰杰\AppData\Roaming\Typora\typora-user-images\1602043929640.png)]

    直接登录到druid的管理页面查看。

    3.测试 可以访问 [外链图片转存中...(img-5ta6JinL-1602044039474)] 直接登录到druid的管理页面查看。
    Processed: 0.013, SQL: 8