From d22a7d9c43a7c3181f085a00b0c7009d174ba9e4 Mon Sep 17 00:00:00 2001 From: riverflow <3011499946@qq.com> Date: Wed, 13 Aug 2025 10:06:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=A8web=E6=A8=A1=E5=9D=97=E4=B8=8B?= =?UTF-8?q?=E5=AF=BC=E5=85=A5mybatis-plus=E4=BE=9D=E8=B5=96=20=E9=80=9A?= =?UTF-8?q?=E8=BF=87application.yml=E6=8E=A7=E5=88=B6active=E5=92=8Ctest?= =?UTF-8?q?=E7=9A=84=E5=88=87=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在common模块下封装返回状态码,以及数据返回工具类 --- .../itmk-base-parent/.idea/uiDesigner.xml | 124 ++++++++++++++++++ .../src/main/java/com/itmk/Main.java | 7 - .../main/java/com/itmk/utils/ResultUtils.java | 44 +++++++ .../main/java/com/itmk/utils/ResultVo.java | 15 +++ .../main/java/com/itmk/utils/StatusCode.java | 14 ++ .../src/main/java/com/itmk/Main.java | 7 - .../com/itmk/config/MyBatisPlusConfig.java | 48 +++++++ .../src/main/resources/application-active.yml | 36 +++++ .../src/main/resources/application-test.yml | 36 +++++ .../src/main/resources/application.yml | 3 + 10 files changed, 320 insertions(+), 14 deletions(-) create mode 100644 api-interface/itmk-base-parent/.idea/uiDesigner.xml delete mode 100644 api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/Main.java create mode 100644 api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultUtils.java create mode 100644 api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultVo.java create mode 100644 api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/StatusCode.java delete mode 100644 api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/Main.java create mode 100644 api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/config/MyBatisPlusConfig.java create mode 100644 api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-active.yml create mode 100644 api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-test.yml create mode 100644 api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application.yml diff --git a/api-interface/itmk-base-parent/.idea/uiDesigner.xml b/api-interface/itmk-base-parent/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/api-interface/itmk-base-parent/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/Main.java b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/Main.java deleted file mode 100644 index 541fcc3..0000000 --- a/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/Main.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.itmk; - -public class Main { - public static void main(String[] args) { - System.out.println("Hello world!"); - } -} \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultUtils.java b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultUtils.java new file mode 100644 index 0000000..abcba3f --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultUtils.java @@ -0,0 +1,44 @@ +package com.itmk.utils; + +public class ResultUtils { + + // 数据返回工具类 +// 无参数返回 + public static ResultVo success() { + return Vo(null, StatusCode.SUCCESS_CODE, null); + } + + public static ResultVo success(String msg) { + return Vo(msg, StatusCode.SUCCESS_CODE, null); + } + + // 带参数返回 + public static ResultVo success(String msg, Object data) { + return Vo(msg, StatusCode.SUCCESS_CODE, data); + } + + public static ResultVo success(String msg, int code, Object data) { + return Vo(msg, code, data); + } + + public static ResultVo Vo(String msg, int code, Object data) { + return new ResultVo(msg, code, data); + } + +// 错误返回 + public static ResultVo error() { + return Vo(null, StatusCode.ERROR_CODE, null); + } + public static ResultVo error(String msg) { + return Vo(msg, StatusCode.ERROR_CODE, null); + } + public static ResultVo error(String msg, Object data) { + return Vo(msg, StatusCode.ERROR_CODE, data); + } + public static ResultVo error(String msg, int code) { + return Vo(msg, code, null); + } + public static ResultVo error(String msg, int code, Object data) { + return Vo(null, code, data); + } +} diff --git a/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultVo.java b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultVo.java new file mode 100644 index 0000000..3b6ef98 --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/ResultVo.java @@ -0,0 +1,15 @@ +package com.itmk.utils; + + +import lombok.AllArgsConstructor; +import lombok.Data; + + +//通过lombok注解自动生成getter和setter方法以及全参构造 +@Data +@AllArgsConstructor +public class ResultVo { + private String msg; + private int code; + private T date; +} diff --git a/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/StatusCode.java b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/StatusCode.java new file mode 100644 index 0000000..e6e979e --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-common/src/main/java/com/itmk/utils/StatusCode.java @@ -0,0 +1,14 @@ +package com.itmk.utils; + +//返回状态码 +public class StatusCode { +// 返回成功 + public static final int SUCCESS_CODE = 200; + +// 错误状态码 + public static final int ERROR_CODE = 500; + +// 无权限 + public static final int NO_LOGIN = 600; + public static final int NO_AUTH = 700; +} diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/Main.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/Main.java deleted file mode 100644 index 541fcc3..0000000 --- a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/Main.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.itmk; - -public class Main { - public static void main(String[] args) { - System.out.println("Hello world!"); - } -} \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/config/MyBatisPlusConfig.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/config/MyBatisPlusConfig.java new file mode 100644 index 0000000..8c5e69a --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/config/MyBatisPlusConfig.java @@ -0,0 +1,48 @@ +package com.itmk.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration //表明MyBatisPlusConfig是一个配置类 +@MapperScan("com.itmk.**.mapper") // 配置扫描的dao/mapper接口 +public class MyBatisPlusConfig { + + /** + * 最新版 MyBatis-Plus 插件配置 + * 推荐组合:分页 + 乐观锁 + 防止全表更新 + */ +// @Bean +// public MybatisPlusInterceptor mybatisPlusInterceptor() { +// MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); +// +// // 1. 分页插件 +// PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor(DbType.MYSQL); +// paginationInnerInterceptor.setMaxLimit(1000L); // 设置单页最大记录数 +// interceptor.addInnerInterceptor(paginationInnerInterceptor); +// +// // 2. 乐观锁插件 (需要实体类有 @Version 注解) +// interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); +// +// // 3. 防止全表更新与删除插件 +// interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor()); +// +// return interceptor; +// } + + /** + * 添加分页插件 + */ + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor() { + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); // 如果配置多个插件, 切记分页最后添加 + // 如果有多数据源可以不配具体类型, 否则都建议配上具体的 DbType + return interceptor; + } +} \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-active.yml b/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-active.yml new file mode 100644 index 0000000..60208c0 --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-active.yml @@ -0,0 +1,36 @@ +# 端口号配置 +server: + port: 8089 + +# 数据库连接配置 +spring: + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://localhost:3306/order-system?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + username: root + password: 123456 + druid: + # 添加基本的Druid连接池配置 + initial-size: 5 + min-idle: 5 + max-active: 20 + test-on-borrow: true + validation-query: SELECT 1 + +# MyBatis Plus配置 +mybatis-plus: + configuration: + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + global-config: + db-config: + # 配置MyBatis Plus在更新时间更新非空和非NULL的字段 + update-strategy: not_empty + +# 日志配置 +logging: + level: + root: info + com.itmk: debug # 设置项目的包名为debug级别 + pattern: + console: '%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n' \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-test.yml b/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-test.yml new file mode 100644 index 0000000..60208c0 --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application-test.yml @@ -0,0 +1,36 @@ +# 端口号配置 +server: + port: 8089 + +# 数据库连接配置 +spring: + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://localhost:3306/order-system?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + username: root + password: 123456 + druid: + # 添加基本的Druid连接池配置 + initial-size: 5 + min-idle: 5 + max-active: 20 + test-on-borrow: true + validation-query: SELECT 1 + +# MyBatis Plus配置 +mybatis-plus: + configuration: + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + global-config: + db-config: + # 配置MyBatis Plus在更新时间更新非空和非NULL的字段 + update-strategy: not_empty + +# 日志配置 +logging: + level: + root: info + com.itmk: debug # 设置项目的包名为debug级别 + pattern: + console: '%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n' \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application.yml b/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application.yml new file mode 100644 index 0000000..027b4e3 --- /dev/null +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/resources/application.yml @@ -0,0 +1,3 @@ +spring: + profiles: + active: test \ No newline at end of file