From 763ebcf5d1f9dce369aa7685e75c43ef2bb23563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E6=B3=B3=E8=BE=B0?= <312189607@qq.com> Date: Mon, 20 May 2024 16:31:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=BB=93=E6=9E=84=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E5=8E=9F=E6=9D=A5=E7=9A=84=E6=A8=A1=E5=BC=8F=EF=BC=8C?= =?UTF-8?q?=E8=AF=B7=E4=BD=BF=E7=94=A8mockito=E8=BF=9B=E8=A1=8C=E6=B5=8B?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- milkbox-app/pom.xml | 5 -- .../core/config/CommonConfiguration.java | 2 +- .../core/config/MybatisPlusConfiguration.java | 2 +- .../core/config/SaTokenConfiguration.java | 2 +- .../core/handler/GlobalControllerAdvice.java | 2 +- .../mybatisPlus/MyMetaObjectHandler.java | 2 +- milkbox-config/pom.xml | 26 ------ milkbox-service/service-sys/pom.xml | 5 +- .../src/test/java/resources/application.yml | 80 ------------------- .../java/top/milkbox/sys/ApplicationTest.java | 42 ---------- .../java/top/milkbox/sys/test/TopTest.java | 29 ------- pom.xml | 25 +++--- "\345\244\207\345\277\230\345\275\225.md" | 3 +- 13 files changed, 23 insertions(+), 202 deletions(-) rename {milkbox-config/src/main/java/top/milkbox/config => milkbox-app/src/main/java/top/milkbox}/core/config/CommonConfiguration.java (74%) rename {milkbox-config/src/main/java/top/milkbox/config => milkbox-app/src/main/java/top/milkbox}/core/config/MybatisPlusConfiguration.java (96%) rename {milkbox-config/src/main/java/top/milkbox/config => milkbox-app/src/main/java/top/milkbox}/core/config/SaTokenConfiguration.java (94%) rename {milkbox-config/src/main/java/top/milkbox/config => milkbox-app/src/main/java/top/milkbox}/core/handler/GlobalControllerAdvice.java (99%) rename {milkbox-config/src/main/java/top/milkbox/config => milkbox-app/src/main/java/top/milkbox}/core/handler/mybatisPlus/MyMetaObjectHandler.java (97%) delete mode 100644 milkbox-config/pom.xml delete mode 100644 milkbox-service/service-sys/src/test/java/resources/application.yml delete mode 100644 milkbox-service/service-sys/src/test/java/top/milkbox/sys/ApplicationTest.java delete mode 100644 milkbox-service/service-sys/src/test/java/top/milkbox/sys/test/TopTest.java diff --git a/milkbox-app/pom.xml b/milkbox-app/pom.xml index 2b06cc0..945018b 100644 --- a/milkbox-app/pom.xml +++ b/milkbox-app/pom.xml @@ -19,11 +19,6 @@ - - - top.milkbox - milkbox-config - top.milkbox diff --git a/milkbox-config/src/main/java/top/milkbox/config/core/config/CommonConfiguration.java b/milkbox-app/src/main/java/top/milkbox/core/config/CommonConfiguration.java similarity index 74% rename from milkbox-config/src/main/java/top/milkbox/config/core/config/CommonConfiguration.java rename to milkbox-app/src/main/java/top/milkbox/core/config/CommonConfiguration.java index af75fad..7d97a4f 100644 --- a/milkbox-config/src/main/java/top/milkbox/config/core/config/CommonConfiguration.java +++ b/milkbox-app/src/main/java/top/milkbox/core/config/CommonConfiguration.java @@ -1,4 +1,4 @@ -package top.milkbox.config.core.config; +package top.milkbox.core.config; import org.springframework.context.annotation.Configuration; diff --git a/milkbox-config/src/main/java/top/milkbox/config/core/config/MybatisPlusConfiguration.java b/milkbox-app/src/main/java/top/milkbox/core/config/MybatisPlusConfiguration.java similarity index 96% rename from milkbox-config/src/main/java/top/milkbox/config/core/config/MybatisPlusConfiguration.java rename to milkbox-app/src/main/java/top/milkbox/core/config/MybatisPlusConfiguration.java index 9b13f41..9aea7bc 100644 --- a/milkbox-config/src/main/java/top/milkbox/config/core/config/MybatisPlusConfiguration.java +++ b/milkbox-app/src/main/java/top/milkbox/core/config/MybatisPlusConfiguration.java @@ -1,4 +1,4 @@ -package top.milkbox.config.core.config; +package top.milkbox.core.config; import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; diff --git a/milkbox-config/src/main/java/top/milkbox/config/core/config/SaTokenConfiguration.java b/milkbox-app/src/main/java/top/milkbox/core/config/SaTokenConfiguration.java similarity index 94% rename from milkbox-config/src/main/java/top/milkbox/config/core/config/SaTokenConfiguration.java rename to milkbox-app/src/main/java/top/milkbox/core/config/SaTokenConfiguration.java index 55df361..225c2c4 100644 --- a/milkbox-config/src/main/java/top/milkbox/config/core/config/SaTokenConfiguration.java +++ b/milkbox-app/src/main/java/top/milkbox/core/config/SaTokenConfiguration.java @@ -1,4 +1,4 @@ -package top.milkbox.config.core.config; +package top.milkbox.core.config; import cn.dev33.satoken.interceptor.SaInterceptor; import org.springframework.context.annotation.Configuration; diff --git a/milkbox-config/src/main/java/top/milkbox/config/core/handler/GlobalControllerAdvice.java b/milkbox-app/src/main/java/top/milkbox/core/handler/GlobalControllerAdvice.java similarity index 99% rename from milkbox-config/src/main/java/top/milkbox/config/core/handler/GlobalControllerAdvice.java rename to milkbox-app/src/main/java/top/milkbox/core/handler/GlobalControllerAdvice.java index d4db3cd..638f4cd 100644 --- a/milkbox-config/src/main/java/top/milkbox/config/core/handler/GlobalControllerAdvice.java +++ b/milkbox-app/src/main/java/top/milkbox/core/handler/GlobalControllerAdvice.java @@ -1,4 +1,4 @@ -package top.milkbox.config.core.handler; +package top.milkbox.core.handler; import cn.dev33.satoken.exception.NotLoginException; import cn.hutool.core.util.StrUtil; diff --git a/milkbox-config/src/main/java/top/milkbox/config/core/handler/mybatisPlus/MyMetaObjectHandler.java b/milkbox-app/src/main/java/top/milkbox/core/handler/mybatisPlus/MyMetaObjectHandler.java similarity index 97% rename from milkbox-config/src/main/java/top/milkbox/config/core/handler/mybatisPlus/MyMetaObjectHandler.java rename to milkbox-app/src/main/java/top/milkbox/core/handler/mybatisPlus/MyMetaObjectHandler.java index b183648..b9c3133 100644 --- a/milkbox-config/src/main/java/top/milkbox/config/core/handler/mybatisPlus/MyMetaObjectHandler.java +++ b/milkbox-app/src/main/java/top/milkbox/core/handler/mybatisPlus/MyMetaObjectHandler.java @@ -1,4 +1,4 @@ -package top.milkbox.config.core.handler.mybatisPlus; +package top.milkbox.core.handler.mybatisPlus; import cn.dev33.satoken.exception.NotLoginException; import cn.dev33.satoken.exception.NotWebContextException; diff --git a/milkbox-config/pom.xml b/milkbox-config/pom.xml deleted file mode 100644 index 182f4f1..0000000 --- a/milkbox-config/pom.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - 4.0.0 - - top.milkbox - milkbox-api - 1.0-DEV - - - milkbox-config - - - 21 - 21 - UTF-8 - - - - - top.milkbox - milkbox-common - - - \ No newline at end of file diff --git a/milkbox-service/service-sys/pom.xml b/milkbox-service/service-sys/pom.xml index 833db09..6fa93c7 100644 --- a/milkbox-service/service-sys/pom.xml +++ b/milkbox-service/service-sys/pom.xml @@ -18,10 +18,7 @@ - - top.milkbox - milkbox-config - + diff --git a/milkbox-service/service-sys/src/test/java/resources/application.yml b/milkbox-service/service-sys/src/test/java/resources/application.yml deleted file mode 100644 index dc20b96..0000000 --- a/milkbox-service/service-sys/src/test/java/resources/application.yml +++ /dev/null @@ -1,80 +0,0 @@ -server: - port: 9996 - -############## springdoc文档配置 ############## -springdoc: - swagger-ui: - path: "/doc.html" - -spring: - ############## 数据库配置 ############## - datasource: - # 主机地址、用户名和密码请配置环境变量 - driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/milkbox2_test?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&useInformationSchema=true - type: com.alibaba.druid.pool.DruidDataSource - username: root - password: 123456 - - data: - ############## redis连接池配置 ############## - # 注:springboot3的redis配置必须放到data节点下 - redis: - # Redis数据库索引(默认为0) - database: 6 - # Redis服务器地址 - host: 127.0.0.1 - # Redis服务器连接端口 - port: 6379 - # Redis服务器连接密码(默认为空) - password: 123456 - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池最大连接数 - max-active: 200 - # 连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms - # 连接池中的最大空闲连接 - max-idle: 10 - # 连接池中的最小空闲连接 - min-idle: 0 - -############## mybatis-plus配置 ############## -mybatis-plus: - configuration: - # 如果查询结果中包含空值的列,则 MyBatis 在映射的时候,不会映射这个字段 - jdbc-type-for-null: null - # mybatis-plus的日志(开启后控制台打印的内容非常多。生产环境请禁止,输出日志会导致性能下降和隐私泄露) - log-impl: org.apache.ibatis.logging.stdout.StdOutImpl - global-config: - banner: false - enable-sql-runner: true - db-config: - id-type: AUTO - logic-delete-value: 1 - logic-not-delete-value: 0 - # 所有的mapper映射文件 - mapper-locations: - - classpath*:top/milkbox/**/mapping/*.xml - # 定义所有操作类的别名所在包 - type-aliases-package: top.milkbox.**.entity;top.milkbox.**.param;top.milkbox.**.vo - - -############## Sa-Token配置 (文档: https://sa-token.cc) ############## -sa-token: - # token 名称(同时也是浏览器中cookie的名称) - token-name: sa-token - # token 有效期(单位:秒) 默认30天,-1 代表永久有效 - timeout: 2592000 - # token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结 - active-timeout: -1 - # 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录) - is-concurrent: true - # 在多人登录同一账号时,是否共用一个 token (为 true 时所有登录共用一个 token, 为 false 时每次登录新建一个 token) - is-share: true - # token 风格(默认可取值:uuid、simple-uuid、random-32、random-64、random-128、tik) - token-style: random-32 - # 是否输出操作日志(生产环境请禁止,输出日志会导致性能下降和隐私泄露) - is-log: true diff --git a/milkbox-service/service-sys/src/test/java/top/milkbox/sys/ApplicationTest.java b/milkbox-service/service-sys/src/test/java/top/milkbox/sys/ApplicationTest.java deleted file mode 100644 index 9cd77dd..0000000 --- a/milkbox-service/service-sys/src/test/java/top/milkbox/sys/ApplicationTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package top.milkbox.sys; - -import cn.hutool.core.date.DateTime; -import cn.hutool.json.JSONUtil; -import lombok.extern.slf4j.Slf4j; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.ConfigurableApplicationContext; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.servlet.config.annotation.EnableWebMvc; -import top.milkbox.common.pojo.CommonResult; - -import java.util.Date; -import java.util.TimeZone; - -/** - * 创建时间: 2024-04-09 下午 5:19 - * - * @author milkbox - */ -@Slf4j -@EnableWebMvc -@RestController -@SpringBootApplication -public class ApplicationTest { - - /** - * 主启动函数 - */ - public static void main(String[] args) { - SpringApplication springApplication = new SpringApplication(ApplicationTest.class); - ConfigurableApplicationContext app = springApplication.run(args); - log.info(">>> {}", ApplicationTest.class.getSimpleName().toUpperCase() + " STARTING SUCCESS 启动成功"); - } - - @GetMapping("/") - public CommonResult welcome(@RequestParam(required = false) String message) { - return CommonResult.ok("系统运行中......", message); - } -} diff --git a/milkbox-service/service-sys/src/test/java/top/milkbox/sys/test/TopTest.java b/milkbox-service/service-sys/src/test/java/top/milkbox/sys/test/TopTest.java deleted file mode 100644 index b86e43c..0000000 --- a/milkbox-service/service-sys/src/test/java/top/milkbox/sys/test/TopTest.java +++ /dev/null @@ -1,29 +0,0 @@ -package top.milkbox.sys.test; - - -import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; -import top.milkbox.sys.ApplicationTest; -import top.milkbox.sys.modular.user.entity.SysUserEntity; -import top.milkbox.sys.modular.user.service.SysUserService; - -/** - * 测试类 - * 创建时间: 2024-04-09 下午 4:49 - * - * @author milkbox - */ -@SpringBootTest(classes = ApplicationTest.class) -public class TopTest { - - @Autowired - private SysUserService userService; - - @Test - public void test() { - SysUserEntity entity = userService.findEntity(3); - // 断言 - assert entity != null; - } -} diff --git a/pom.xml b/pom.xml index c29e0b0..f9d1ca8 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,6 @@ pom milkbox-app - milkbox-config milkbox-common milkbox-service @@ -64,18 +63,24 @@ + + + + + + + + + + + + + + com.baomidou - mybatis-plus-boot-starter + mybatis-plus-spring-boot3-starter ${mybatis-plus.version} - - - - - org.mybatis - mybatis-spring - - diff --git "a/\345\244\207\345\277\230\345\275\225.md" "b/\345\244\207\345\277\230\345\275\225.md" index 9a29114..1886150 100644 --- "a/\345\244\207\345\277\230\345\275\225.md" +++ "b/\345\244\207\345\277\230\345\275\225.md" @@ -3,7 +3,8 @@ - [x] 现在需要考虑SysRoleService和SysUserService之间循环依赖的函数放到SysRelationshipService中,在SysRoleService和SysUserService的controller调用SysRelationshipService。 - [x] 在子线程保存日志的过程中,有可能request对象被收回,导致报错。考虑将所有request对象的操作放到子线程外面运行,将所有对request的处理操作完成后再开启日志子线程。通过传参的方式将对request处理的结果传入日志子线程。 - [ ] 考虑按钮权限功能。 -- [x] 考虑进行单元测试,两种方案。1:在各个子模块中编写测试用例,但是需要解决模块依赖启动类的问题。2:专门编写一个测试子模块,将其他模块的测试用例写到这个测试子模块中。 +- [x] ~~考虑进行单元测试,两种方案。1:在各个子模块中编写测试用例,但是需要解决模块依赖启动类的问题。2:专门编写一个测试子模块,将其他模块的测试用例写到这个测试子模块中。~~ +- [ ] 使用mockito进行springBoot测试 - [ ] 考虑使用一个注解对密级字段进行权限控制。将注解放到实体类的指定字段上,就可以控制整条数据的权限。 - [ ] 需要接口调用频率的控制。 - [ ] 级联删除与取代删除不支持批量操作。普通批量删除方式删除当前节点后,子节点将无法通过根节点找到,需要通过定时任务进行定期删除。 -- Gitee