From da0ad38004dab27c148d2733851b3d62ec481223 Mon Sep 17 00:00:00 2001 From: yovinchen Date: Fri, 19 Jan 2024 16:54:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E5=90=88=20mybatis-plus=20knife4j=20?= =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/pom.xml | 56 +++++++++------ .../train/common/aspect/LogAspect.java | 4 +- .../train/common/config/SwaggerConfig.java | 29 ++++++++ gateway/pom.xml | 1 + gateway/src/main/resources/application.yml | 20 ++++++ member/pom.xml | 12 +--- .../member/controller/MemberController.java | 18 +++++ .../controller/PassengerController.java | 18 +++++ .../yovinchen/train/member/entity/Member.java | 33 +++++++++ .../train/member/entity/Passenger.java | 55 ++++++++++++++ .../train/member/mapper/MemberMapper.java | 18 +++++ .../train/member/mapper/PassengerMapper.java | 18 +++++ .../train/member/service/MemberService.java | 16 +++++ .../member/service/PassengerService.java | 16 +++++ .../member/serviceImpl/MemberServiceImpl.java | 20 ++++++ .../serviceImpl/PassengerServiceImpl.java | 20 ++++++ member/src/main/resources/application.yml | 24 ++++++- .../src/main/resources/mapper/MemberXml.xml | 5 ++ .../main/resources/mapper/PassengerXml.xml | 5 ++ pom.xml | 72 +++++++++++++------ 20 files changed, 400 insertions(+), 60 deletions(-) create mode 100644 common/src/main/java/com/yovinchen/train/common/config/SwaggerConfig.java create mode 100644 member/src/main/java/com/yovinchen/train/member/controller/MemberController.java create mode 100644 member/src/main/java/com/yovinchen/train/member/controller/PassengerController.java create mode 100644 member/src/main/java/com/yovinchen/train/member/entity/Member.java create mode 100644 member/src/main/java/com/yovinchen/train/member/entity/Passenger.java create mode 100644 member/src/main/java/com/yovinchen/train/member/mapper/MemberMapper.java create mode 100644 member/src/main/java/com/yovinchen/train/member/mapper/PassengerMapper.java create mode 100644 member/src/main/java/com/yovinchen/train/member/service/MemberService.java create mode 100644 member/src/main/java/com/yovinchen/train/member/service/PassengerService.java create mode 100644 member/src/main/java/com/yovinchen/train/member/serviceImpl/MemberServiceImpl.java create mode 100644 member/src/main/java/com/yovinchen/train/member/serviceImpl/PassengerServiceImpl.java create mode 100644 member/src/main/resources/mapper/MemberXml.xml create mode 100644 member/src/main/resources/mapper/PassengerXml.xml diff --git a/common/pom.xml b/common/pom.xml index 81e5d8e..478e3f1 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -33,31 +33,43 @@ com.alibaba fastjson - + + + org.apache.velocity + velocity + 1.7 + cn.hutool hutool-all - - - - - - - - - - - - - - - - - - - - - + + com.baomidou + mybatis-plus-boot-starter + + + com.baomidou + mybatis-plus-generator + + + org.freemarker + freemarker + + + mysql + mysql-connector-java + + + com.github.xiaoymin + knife4j-openapi3-jakarta-spring-boot-starter + + + org.projectlombok + lombok + + + io.springfox + springfox-swagger-common + diff --git a/common/src/main/java/com/yovinchen/train/common/aspect/LogAspect.java b/common/src/main/java/com/yovinchen/train/common/aspect/LogAspect.java index e97ab65..50c1272 100644 --- a/common/src/main/java/com/yovinchen/train/common/aspect/LogAspect.java +++ b/common/src/main/java/com/yovinchen/train/common/aspect/LogAspect.java @@ -68,9 +68,7 @@ public class LogAspect { // 排除特殊类型的参数,如文件类型 Object[] arguments = new Object[args.length]; for (int i = 0; i < args.length; i++) { - if (args[i] instanceof ServletRequest - || args[i] instanceof ServletResponse - || args[i] instanceof MultipartFile) { + if (args[i] instanceof ServletRequest || args[i] instanceof ServletResponse || args[i] instanceof MultipartFile) { continue; } arguments[i] = args[i]; diff --git a/common/src/main/java/com/yovinchen/train/common/config/SwaggerConfig.java b/common/src/main/java/com/yovinchen/train/common/config/SwaggerConfig.java new file mode 100644 index 0000000..4d8e5e9 --- /dev/null +++ b/common/src/main/java/com/yovinchen/train/common/config/SwaggerConfig.java @@ -0,0 +1,29 @@ +package com.yovinchen.train.common.config; + +import io.swagger.v3.oas.models.ExternalDocumentation; +import io.swagger.v3.oas.models.OpenAPI; +import io.swagger.v3.oas.models.info.Info; +import io.swagger.v3.oas.models.info.License; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + + +/** + * ClassName: SwaggerConfig + * Package: com.yovinchen.train.member.config + * + * @author yovinchen + * @Create 2024/1/19 16:38 + */ +@Configuration +public class SwaggerConfig { + @Bean + public OpenAPI TrainOpenAPI() { + return new OpenAPI().info(new Info().title("tarin-backend") + .description("train文档") + .version("v1") + .license(new License().name("Apache 2.0"))) + .externalDocs(new ExternalDocumentation().description("外部文档") + .url("https://springshop.wiki.github.org/docs")); + } +} diff --git a/gateway/pom.xml b/gateway/pom.xml index 3228809..6db14df 100644 --- a/gateway/pom.xml +++ b/gateway/pom.xml @@ -27,6 +27,7 @@ runtime true + diff --git a/gateway/src/main/resources/application.yml b/gateway/src/main/resources/application.yml index 00cff46..d0581ed 100644 --- a/gateway/src/main/resources/application.yml +++ b/gateway/src/main/resources/application.yml @@ -1,2 +1,22 @@ server: port: 8000 +spring: + cloud: + gateway: + routes: + - id: member + uri: http://127.0.0.1:8001 + predicates: + - Path=/member/** + - id: product + uri: http://127.0.0.1:8002 + predicates: + - Path=/product/** + - id: order + uri: http://127.0.0.1:8003 + predicates: + - Path=/order/** + - id: user + uri: http://127.0.0.1:8004 + predicates: + - Path=/user/** diff --git a/member/pom.xml b/member/pom.xml index e9ff122..a75faac 100644 --- a/member/pom.xml +++ b/member/pom.xml @@ -21,17 +21,7 @@ com.yovinchen common - - - org.springframework.boot - spring-boot-devtools - runtime - true - - - org.springframework.boot - spring-boot-starter-test - test + 0.0.1-SNAPSHOT diff --git a/member/src/main/java/com/yovinchen/train/member/controller/MemberController.java b/member/src/main/java/com/yovinchen/train/member/controller/MemberController.java new file mode 100644 index 0000000..f635a42 --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/controller/MemberController.java @@ -0,0 +1,18 @@ +package com.yovinchen.train.member.controller; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 会员 前端控制器 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +@RestController +@RequestMapping("/member") +public class MemberController { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/controller/PassengerController.java b/member/src/main/java/com/yovinchen/train/member/controller/PassengerController.java new file mode 100644 index 0000000..7e9bebe --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/controller/PassengerController.java @@ -0,0 +1,18 @@ +package com.yovinchen.train.member.controller; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 乘车人 前端控制器 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +@RestController +@RequestMapping("/passenger") +public class PassengerController { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/entity/Member.java b/member/src/main/java/com/yovinchen/train/member/entity/Member.java new file mode 100644 index 0000000..3e2181a --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/entity/Member.java @@ -0,0 +1,33 @@ +package com.yovinchen.train.member.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +/** + *

+ * 会员 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:36:29 + */ +@Getter +@Setter +@TableName("member") +@ApiModel(value = "Member对象", description = "会员") +public class Member { + + @ApiModelProperty("id") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private Long id; + + @ApiModelProperty("手机号") + @TableField("mobile") + private String mobile; +} diff --git a/member/src/main/java/com/yovinchen/train/member/entity/Passenger.java b/member/src/main/java/com/yovinchen/train/member/entity/Passenger.java new file mode 100644 index 0000000..f743dc7 --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/entity/Passenger.java @@ -0,0 +1,55 @@ +package com.yovinchen.train.member.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import java.util.Date; + +/** + *

+ * 乘车人 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:36:29 + */ +@Getter +@Setter +@TableName("passenger") +@ApiModel(value = "Passenger对象", description = "乘车人") +public class Passenger { + + @ApiModelProperty("id") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private Long id; + + @ApiModelProperty("会员id") + @TableField("member_id") + private Long memberId; + + @ApiModelProperty("姓名") + @TableField("name") + private String name; + + @ApiModelProperty("身份证") + @TableField("id_card") + private String idCard; + + @ApiModelProperty("旅客类型|枚举[PassengerTypeEnum]") + @TableField("type") + private String type; + + @ApiModelProperty("新增时间") + @TableField("create_time") + private Date createTime; + + @ApiModelProperty("修改时间") + @TableField("update_time") + private Date updateTime; +} diff --git a/member/src/main/java/com/yovinchen/train/member/mapper/MemberMapper.java b/member/src/main/java/com/yovinchen/train/member/mapper/MemberMapper.java new file mode 100644 index 0000000..1e1c3d2 --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/mapper/MemberMapper.java @@ -0,0 +1,18 @@ +package com.yovinchen.train.member.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yovinchen.train.member.entity.Member; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * 会员 Mapper 接口 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +@Mapper +public interface MemberMapper extends BaseMapper { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/mapper/PassengerMapper.java b/member/src/main/java/com/yovinchen/train/member/mapper/PassengerMapper.java new file mode 100644 index 0000000..7bc73d8 --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/mapper/PassengerMapper.java @@ -0,0 +1,18 @@ +package com.yovinchen.train.member.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yovinchen.train.member.entity.Passenger; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * 乘车人 Mapper 接口 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +@Mapper +public interface PassengerMapper extends BaseMapper { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/service/MemberService.java b/member/src/main/java/com/yovinchen/train/member/service/MemberService.java new file mode 100644 index 0000000..ee345a9 --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/service/MemberService.java @@ -0,0 +1,16 @@ +package com.yovinchen.train.member.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.yovinchen.train.member.entity.Member; + +/** + *

+ * 会员 服务类 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +public interface MemberService extends IService { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/service/PassengerService.java b/member/src/main/java/com/yovinchen/train/member/service/PassengerService.java new file mode 100644 index 0000000..932a9aa --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/service/PassengerService.java @@ -0,0 +1,16 @@ +package com.yovinchen.train.member.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.yovinchen.train.member.entity.Passenger; + +/** + *

+ * 乘车人 服务类 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +public interface PassengerService extends IService { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/serviceImpl/MemberServiceImpl.java b/member/src/main/java/com/yovinchen/train/member/serviceImpl/MemberServiceImpl.java new file mode 100644 index 0000000..81ecc6a --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/serviceImpl/MemberServiceImpl.java @@ -0,0 +1,20 @@ +package com.yovinchen.train.member.serviceImpl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yovinchen.train.member.entity.Member; +import com.yovinchen.train.member.mapper.MemberMapper; +import com.yovinchen.train.member.service.MemberService; +import org.springframework.stereotype.Service; + +/** + *

+ * 会员 服务实现类 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +@Service +public class MemberServiceImpl extends ServiceImpl implements MemberService { + +} diff --git a/member/src/main/java/com/yovinchen/train/member/serviceImpl/PassengerServiceImpl.java b/member/src/main/java/com/yovinchen/train/member/serviceImpl/PassengerServiceImpl.java new file mode 100644 index 0000000..9ca65bd --- /dev/null +++ b/member/src/main/java/com/yovinchen/train/member/serviceImpl/PassengerServiceImpl.java @@ -0,0 +1,20 @@ +package com.yovinchen.train.member.serviceImpl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yovinchen.train.member.entity.Passenger; +import com.yovinchen.train.member.mapper.PassengerMapper; +import com.yovinchen.train.member.service.PassengerService; +import org.springframework.stereotype.Service; + +/** + *

+ * 乘车人 服务实现类 + *

+ * + * @author yovinchen + * @since 2024-01-19 04:10:59 + */ +@Service +public class PassengerServiceImpl extends ServiceImpl implements PassengerService { + +} diff --git a/member/src/main/resources/application.yml b/member/src/main/resources/application.yml index 1a5d901..333745c 100644 --- a/member/src/main/resources/application.yml +++ b/member/src/main/resources/application.yml @@ -1,7 +1,29 @@ server: - port: 8081 + port: 8001 servlet: context-path: /member spring: application: name: member + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://82.157.68.223:3306/train?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC + name: train + password: train +# springdoc-openapi项目配置 +springdoc: + swagger-ui: + path: /swagger-ui.html + tags-sorter: alpha + operations-sorter: alpha + api-docs: + path: /v3/api-docs + group-configs: + - group: 'default' + paths-to-match: '/**' + packages-to-scan: com.yovinchen.train.member +# knife4j的增强配置,不需要增强可以不配 +knife4j: + enable: true + setting: + language: zh_cn diff --git a/member/src/main/resources/mapper/MemberXml.xml b/member/src/main/resources/mapper/MemberXml.xml new file mode 100644 index 0000000..b795936 --- /dev/null +++ b/member/src/main/resources/mapper/MemberXml.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/member/src/main/resources/mapper/PassengerXml.xml b/member/src/main/resources/mapper/PassengerXml.xml new file mode 100644 index 0000000..f860f11 --- /dev/null +++ b/member/src/main/resources/mapper/PassengerXml.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/pom.xml b/pom.xml index 993068e..b6ffdc8 100644 --- a/pom.xml +++ b/pom.xml @@ -22,6 +22,17 @@ 17 2022.0.0 + 1.2.70 + 3.5.3.1 + 3.5.3.1 + 2.3.31 + 5.8.25 + 8.0.28 + 1.4.6 + 0.0.1-SNAPSHOT + 4.2.0 + 1.18.30 + 3.0.0 @@ -36,44 +47,59 @@ com.alibaba fastjson - 1.2.70 + ${fastjson.version} cn.hutool hutool-all - 5.8.10 + ${hutool.version} - - com.yovinchen - common - 0.0.1-SNAPSHOT - + + + + + - - - org.mybatis.spring.boot - mybatis-spring-boot-starter - 3.0.0 - mysql mysql-connector-java - 8.0.22 + ${mysql.version} - + - com.github.pagehelper - pagehelper-spring-boot-starter - 1.4.6 + com.baomidou + mybatis-plus-boot-starter + ${mybatis-plus.version} + + + com.baomidou + mybatis-plus-generator + ${mybatis-plus-generator.version} + + + org.freemarker + freemarker + ${freemarker.version} + + + + com.github.xiaoymin + knife4j-openapi3-jakarta-spring-boot-starter + ${knife4j.version} + + + org.projectlombok + lombok + ${lombok.version} + + + io.springfox + springfox-swagger-common + ${springfox.version} - - - - -