• Druid Spring Boot Starter 从配置到简单运行 -解决zone不匹配 -解决dataSource加载失败


    Druid Spring Boot Starter

    中文 | English
    Druid Spring Boot Starter 用于帮助你在Spring Boot项目中轻松集成Druid数据库连接池和监控。

    官方文档:
    Druid Spring Boot Starter


    application.yml

    spring:
      datasource:
    #   数据源基本配置
        username: root
        password: 123456
        url: jdbc:mysql://localhost:3306/estore?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
        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,stat
        maxPoolPreparedStatementPerConnectionSize: 20
        useGlobalDataSourceStat: true
        connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
    # 端口
    server:
      port: 8080
      servlet:
        context-path: /szs
    
    

    导入Druid数据源

    
    @Configuration
    public class DruidConfig {
        @ConfigurationProperties(prefix = "spring.datasource")
        @Bean
        public DataSource druid(){
            return new DruidDataSource();
        }
    
        //配置Druid的监控
        /**1.配置一个管理后台的Servlet*/
        @Bean
        public ServletRegistrationBean statViewServlet(){
            ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(),
                    "/druid/*");
            Map<String,String> initParams = new HashMap<>(10);
            initParams.put("loginUsername", "admin");
            initParams.put("loginPassword", "123456");
            //默认允许所有的进行访问
            initParams.put("allow", "");
    
            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<>(6);
            initParams.put("exclusions","*.js,*.css,/druid/*");
            bean.setInitParameters(initParams);
    
            bean.setUrlPatterns(Arrays.asList("/*"));
            return bean;
        }
    
    }
    

    进行登录,如图,我配置了context-path: /szs;
    进入后输入 " public ServletRegistrationBean statViewServlet()"中的loginUsername和loginPassword即可进入.

  • 相关阅读:
    归并排序处理复杂对象例子
    Java归并排序的递归与非递归实现
    Java实现一个双向链表的倒置功能
    Node<T> 的作用
    Tomcat控制台总是打印日志问题的解决办法
    git回滚部分文件到某个版本
    ios-deploy was not found
    Ionic3的http请求如何实现token验证,并且超时返回登录页
    Ionic开发遇到的坑整理
    使用gradle命令代替CUBA Studio,启动项目
  • 原文地址:https://www.cnblogs.com/zhazhaacmer/p/10506241.html
Copyright © 2020-2023  润新知