From a836ae23bf0f264cb067f3034df69e7320fc660e Mon Sep 17 00:00:00 2001
From: ayi <2294931964@qq.com>
Date: Mon, 1 Dec 2025 17:27:11 +0800
Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=95=B4=E5=90=88Druid=E8=BF=9E?=
=?UTF-8?q?=E6=8E=A5=E6=B1=A0=202=E3=80=81=E9=85=8D=E7=BD=AE=E6=97=A5?=
=?UTF-8?q?=E5=BF=97=E6=A0=BC=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 7 +++
xiaoyi-auth/pom.xml | 5 ++
xiaoyi-auth/src/main/resources/banner.txt | 18 ++++++
.../main/resources/config/application-dev.yml | 55 +++++++++++++++++--
.../src/main/resources/config/logback-dev.xml | 23 ++++++++
.../main/resources/config/logback-prod.xml | 39 +++++++++++++
.../top/crushtj/xiaoyishu/auth/DruidTest.java | 40 ++++++++++++++
.../auth/XiaoyiAuthApplicationTests.java | 9 +++
8 files changed, 192 insertions(+), 4 deletions(-)
create mode 100644 xiaoyi-auth/src/main/resources/banner.txt
create mode 100644 xiaoyi-auth/src/main/resources/config/logback-dev.xml
create mode 100644 xiaoyi-auth/src/main/resources/config/logback-prod.xml
create mode 100644 xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/DruidTest.java
diff --git a/pom.xml b/pom.xml
index 3909806..ad1270a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -41,6 +41,7 @@
2.16.1
8.0.29
3.5.5
+ 1.2.21
@@ -116,6 +117,12 @@
mysql-connector-java
${mysql-connector-java.version}
+
+
+ com.alibaba
+ druid-spring-boot-3-starter
+ ${druid.version}
+
diff --git a/xiaoyi-auth/pom.xml b/xiaoyi-auth/pom.xml
index 7e19c52..f762ef8 100644
--- a/xiaoyi-auth/pom.xml
+++ b/xiaoyi-auth/pom.xml
@@ -47,6 +47,11 @@
mysql
mysql-connector-java
+
+
+ com.alibaba
+ druid-spring-boot-3-starter
+
diff --git a/xiaoyi-auth/src/main/resources/banner.txt b/xiaoyi-auth/src/main/resources/banner.txt
new file mode 100644
index 0000000..f5ec571
--- /dev/null
+++ b/xiaoyi-auth/src/main/resources/banner.txt
@@ -0,0 +1,18 @@
+ /$$ /$$ /$$ /$$ /$$
+| $$ / $$|__/ |__/ | $$
+| $$/ $$/ /$$ /$$$$$$ /$$$$$$ /$$ /$$ /$$ /$$$$$$$| $$$$$$$ /$$ /$$
+ \ $$$$/ | $$ |____ $$ /$$__ $$| $$ | $$| $$ /$$_____/| $$__ $$| $$ | $$
+ >$$ $$ | $$ /$$$$$$$| $$ \ $$| $$ | $$| $$| $$$$$$ | $$ \ $$| $$ | $$
+ /$$/\ $$| $$ /$$__ $$| $$ | $$| $$ | $$| $$ \____ $$| $$ | $$| $$ | $$
+| $$ \ $$| $$| $$$$$$$| $$$$$$/| $$$$$$$| $$ /$$$$$$$/| $$ | $$| $$$$$$/
+|__/ |__/|__/ \_______/ \______/ \____ $$|__/|_______/ |__/ |__/ \______/
+ /$$ | $$
+ | $$$$$$/
+ \______/
+
+One-stop focus on the whole network hotspot.
+:::::::::::::::::::::::::::::::::::::::::::::::::::
+author: 刑加一
+email: 2294931964@qq.com
+about me: https://blog.crushtj.top
+:::::::::::::::::::::::::::::::::::::::::::::::::::
\ No newline at end of file
diff --git a/xiaoyi-auth/src/main/resources/config/application-dev.yml b/xiaoyi-auth/src/main/resources/config/application-dev.yml
index 894fdb1..004daf5 100644
--- a/xiaoyi-auth/src/main/resources/config/application-dev.yml
+++ b/xiaoyi-auth/src/main/resources/config/application-dev.yml
@@ -1,14 +1,53 @@
+server:
+ port: 18881
+ servlet:
+ context-path: /xiaoyishu-auth
+
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
# 数据库连接信息
url: jdbc:mysql://10.0.0.3:3306/xiaoyishu?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: xiaoyi
- password: HhpxE2HWE4bGTyB5
+ password: Os0TpcErSh26nT4Nqqjgo2vwi3IaEglzj+brT2b7q0P4Dlhnv3OEQVUNpG/dYqvJZUCR2/IyfxQ4LnQIB7FcfQ==
+ druid: # Druid 连接池
+ initial-size: 5 # 初始化连接池大小
+ min-idle: 5 # 最小连接池数量
+ max-active: 100 # 最大连接池数量
+ max-wait: 60000 # 连接时最大等待时间(单位:毫秒)
+ test-while-idle: true
+ time-between-eviction-runs-millis: 60000 # 配置多久进行一次检测,检测需要关闭的连接(单位:毫秒)
+ min-evictable-idle-time-millis: 300000 # 配置一个连接在连接池中最小生存的时间(单位:毫秒)
+ max-evictable-idle-time-millis: 900000 # 配置一个连接在连接池中最大生存的时间(单位:毫秒)
+ validation-query: SELECT 1 FROM DUAL # 配置测试连接是否可用的查询 sql
+ test-on-borrow: false
+ test-on-return: false
+ pool-prepared-statements: false
+ web-stat-filter:
+ enabled: true
+ stat-view-servlet:
+ enabled: true
+ url-pattern: /druid/* # 配置监控后台访问路径
+ login-username: admin # 配置监控后台登录的用户名、密码
+ login-password: admin
+ filter:
+ config:
+ enabled: true
+ stat:
+ enabled: true
+ log-slow-sql: true # 开启慢 sql 记录
+ slow-sql-millis: 2000 # 若执行耗时大于 2s,则视为慢 sql
+ merge-sql: true
+ wall: # 防火墙
+ config:
+ multi-statement-allow: true
+ connection-properties: config.decrypt=true;config.decrypt.key=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAK6C4nQHNuYSebx/5vOdvDqP/o8AH+p73s1LWCFs915RiwVHvtEd+ropmXkCO3Agc9Zuo8pyMvccIgPL9F0I8YkCAwEAAQ==
+ output:
+ ansi:
+ enabled: always
+ application:
+ name: xiaoyishu-auth
-logging:
- level:
- top.crushtj.xiaoyishu.auth.domain.mappers: debug
mybatis-plus:
mapper-locations:
- classpath*:top/crushtj/**/*.xml # 匹配所有模块中的 Mapper XML 文件
@@ -16,3 +55,11 @@ mybatis-plus:
configuration:
map-underscore-to-camel-case: true # 开启驼峰命名转换
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 日志输出(调试用)
+
+logging:
+ level:
+ top.crushtj.xiaoyishu.auth.domain.mappers: debug
+ config: classpath:config/logback-dev.xml
+
+
+
diff --git a/xiaoyi-auth/src/main/resources/config/logback-dev.xml b/xiaoyi-auth/src/main/resources/config/logback-dev.xml
new file mode 100644
index 0000000..2b3308b
--- /dev/null
+++ b/xiaoyi-auth/src/main/resources/config/logback-dev.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+ ${CONSOLE_LOG_PATTERN}
+
+
+
+
+
+
+
diff --git a/xiaoyi-auth/src/main/resources/config/logback-prod.xml b/xiaoyi-auth/src/main/resources/config/logback-prod.xml
new file mode 100644
index 0000000..ffd5ddd
--- /dev/null
+++ b/xiaoyi-auth/src/main/resources/config/logback-prod.xml
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${LOG_FILE}-%i.log
+
+ 30
+
+
+ 10MB
+
+
+
+
+ ${FILE_LOG_PATTERN}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/DruidTest.java b/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/DruidTest.java
new file mode 100644
index 0000000..5250ecc
--- /dev/null
+++ b/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/DruidTest.java
@@ -0,0 +1,40 @@
+package top.crushtj.xiaoyishu.auth;
+
+import com.alibaba.druid.filter.config.ConfigTools;
+import lombok.SneakyThrows;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+
+/**
+ * @author hanfuye
+ * @version V1.0
+ * @Title: DruidTest
+ * @Description:
+ * @date 2025/12/01
+ */
+
+@SpringBootTest
+@Slf4j
+public class DruidTest {
+
+ /**
+ * Druid 密码加密
+ */
+ @Test
+ @SneakyThrows
+ void testEncodePassword() {
+ // 你的密码
+ String password = "HhpxE2HWE4bGTyB5";
+ String[] arr = ConfigTools.genKeyPair(512);
+
+ // 私钥
+ log.info("privateKey: {}", arr[0]);
+ // 公钥
+ log.info("publicKey: {}", arr[1]);
+
+ // 通过私钥加密密码
+ String encodePassword = ConfigTools.encrypt(arr[0], password);
+ log.info("password: {}", encodePassword);
+ }
+}
diff --git a/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/XiaoyiAuthApplicationTests.java b/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/XiaoyiAuthApplicationTests.java
index c18baa8..e67a88e 100644
--- a/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/XiaoyiAuthApplicationTests.java
+++ b/xiaoyi-auth/src/test/java/top/crushtj/xiaoyishu/auth/XiaoyiAuthApplicationTests.java
@@ -1,5 +1,6 @@
package top.crushtj.xiaoyishu.auth;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
@@ -31,4 +32,12 @@ class XiaoyiAuthApplicationTests {
userMapper.insert(user);
}
+ @Test
+ void queryTest(){
+ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(UserEntity::getUsername, "刑加一");
+ UserEntity user = userMapper.selectOne(queryWrapper);
+ log.info("查询结果:{}", user);
+ }
+
}