赞
踩
新建springboot项目

pom.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>2.7.15</version>
- <relativePath/> <!-- lookup parent from repository -->
- </parent>
- <groupId>com.shrimpking</groupId>
- <artifactId>springboot-vue-test15</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <name>springboot-vue-test15</name>
- <description>Demo project for Spring Boot</description>
- <properties>
- <java.version>1.8</java.version>
- </properties>
- <dependencies>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-test</artifactId>
- <scope>test</scope>
- </dependency>
- <!--mybatisplus-->
- <dependency>
- <groupId>com.baomidou</groupId>
- <artifactId>mybatis-plus-boot-starter</artifactId>
- <version>3.4.1</version>
- </dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.47</version>
- </dependency>
- <!-- mybatisplus自动生成代码器 -->
- <dependency>
- <groupId>com.baomidou</groupId>
- <artifactId>mybatis-plus-generator</artifactId>
- <version>3.4.1</version>
- </dependency>
- <dependency>
- <groupId>org.freemarker</groupId>
- <artifactId>freemarker</artifactId>
- <version>2.3.30</version>
- </dependency>
- <!--swagger依赖-->
- <dependency>
- <groupId>io.springfox</groupId>
- <artifactId>springfox-swagger2</artifactId>
- <version>2.9.2</version>
- </dependency>
- <!--swagger ui-->
- <dependency>
- <groupId>io.springfox</groupId>
- <artifactId>springfox-swagger-ui</artifactId>
- <version>2.9.2</version>
- </dependency>
- <!-- druid -->
- <dependency>
- <groupId>com.alibaba</groupId>
- <artifactId>druid-spring-boot-starter</artifactId>
- <version>1.1.10</version>
- </dependency>
- <!-- 日志 -->
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.17</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- </dependency>
- <!-- 验证码生成 -->
- <dependency>
- <groupId>com.github.axet</groupId>
- <artifactId>kaptcha</artifactId>
- <version>0.0.9</version>
- </dependency>
- </dependencies>
-
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <configuration>
- <excludes>
- <exclude>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- </exclude>
- </excludes>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- </project>

druid依赖
- <!-- druid -->
- <dependency>
- <groupId>com.alibaba</groupId>
- <artifactId>druid-spring-boot-starter</artifactId>
- <version>1.1.10</version>
- </dependency>
application.properties
- #服务端口
- server.port=8089
- #druid配置
- spring.datasource.name=druidDataSource
- spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
- spring.datasource.druid.driver-class-name=com.mysql.jdbc.Driver
- spring.datasource.druid.url= jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimeZone=UTC
- spring.datasource.druid.username=root
- spring.datasource.druid.password=mysql123
- spring.datasource.druid.filters=stat,wall,log4j,config
- spring.datasource.druid.max-active=100
- spring.datasource.druid.initial-size=1
- spring.datasource.druid.max-wait=60000
- spring.datasource.druid.min-idle=1
- spring.datasource.druid.time-between-eviction-runs-millis=60000
- spring.datasource.druid.min-evictable-idle-time-millis=300000
- spring.datasource.druid.validation-query= select 'x'
- spring.datasource.druid.test-while-idle=true
- spring.datasource.druid.test-on-borrow=false
- spring.datasource.druid.test-on-return=false
- spring.datasource.druid.pool-prepared-statements=true
- spring.datasource.druid.max-open-prepared-statements=50
- spring.datasource.druid.max-pool-prepared-statement-per-connection-size=20
- #max-active=100 最大连接数
- #initial-size=1 初始化大小
- #max-wait=60000 获取连接等待超时时间
- #min-idle=1 最小连接数
- #time-between-eviction-runs-millis=60000 间隔多久进行一次检测,检测需要关闭空闲连接,单位毫秒
- #min-evictable-idle-time-millis=300000 一个连接在池中最小生存时间,单位毫秒
- #filters=stat,wall,log4j,config 配置监控统计拦截的filters,去掉后监控界面SQL无法进行统计,wall用于防火墙
-
- #日志
- mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
- #配置别名
- mybatis-plus.type-aliases-package=com.shrimpking.pojo
- #swagger2
- spring.mvc.pathmatch.matching-strategy=ant_path_matcher

配置类
DruidDataSourceProperties.java
- package com.shrimpking.config;
-
- import lombok.Data;
- import org.springframework.boot.context.properties.ConfigurationProperties;
-
- /**
- * Created by IntelliJ IDEA.
- *
- * @Author : Shrimpking
- * @create 2023/9/10 16:58
- * 德鲁伊数据源的属性集合
- */
- @Data
- @ConfigurationProperties(prefix = "spring.datasource.druid")
- public class DruidDataSourceProperties
- {
- //jdbc
- private String name;
- private String type;
- private String driverClassName;
- private String url;
- private String username;
- private String password;
- //jdbc connection pool
- private int initialSize;
- private int minIdle;
- private int maxActive = 100;
- private long maxWait;
- private long timeBetweenEvictionRunsMills;
- private long minEvictableIdleTimeMills;
- private String validationQuery;
- private boolean testWhileIdle;
- private boolean testOnBorrow;
- private boolean testOnReturn;
- private boolean poolPreparedStatements;
- private int maxOpenPreparedStatements;
- private int maxPoolPreparedStatementPerConnectionSize;
- private String filters;
- }

DruidConfig.java
- package com.shrimpking.config;
-
- import com.alibaba.druid.pool.DruidDataSource;
- import com.alibaba.druid.support.http.StatViewServlet;
- import com.alibaba.druid.support.http.WebStatFilter;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
- import org.springframework.boot.context.properties.EnableConfigurationProperties;
- import org.springframework.boot.web.servlet.FilterRegistrationBean;
- import org.springframework.boot.web.servlet.ServletRegistrationBean;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
-
- import javax.sql.DataSource;
- import java.util.Arrays;
- import java.util.HashMap;
- import java.util.Map;
-
- /**
- * Created by IntelliJ IDEA.
- *
- * @Author : Shrimpking
- * @create 2023/9/10 16:28
- * 德鲁伊配置类,配置后台监控的
- */
- @Configuration
- @EnableConfigurationProperties({DruidDataSourceProperties.class})
- public class DruidConfig
- {
- @Autowired
- private DruidDataSourceProperties properties;
-
- @Bean
- @ConditionalOnMissingBean
- public DataSource druidDataSource(){
- DruidDataSource druidDataSource = new DruidDataSource();
- //复制属性的值
- BeanUtils.copyProperties(properties,druidDataSource);
- return druidDataSource;
- }
-
- //配置Druid的监控
- //1、配置一个管理后台的Servlet
- @Bean
- public ServletRegistrationBean statViewServlet(){
- ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
- Map<String,String> initParams = new HashMap<>();
-
- initParams.put("loginUsername","admin");
- initParams.put("loginPassword","1234");
- initParams.put("allow","");//默认就是允许所有访问
- initParams.put("deny","192.168.100.21");
-
- 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;
- }
- }

访问路径
http://localhost:8089/druid/login.html
账号密码
admin 1234



如果数据源点击了,没有显示,可以找一个controller的接口执行一下,再次访问,就可以看到了。
比如我这里是

赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。