微服务项目基础骨架

应用名

common  配置模块

IErrorCode 异常返回值接口,供其他微服务应用使用

Result 统一返回数据结构

GlobalcErrorCode 全局异常枚举

 Promotion-App

模块列表

RPC模块 promotion-api

比如 PromotionApi 

应用模块 promotion-biz

api

promotionApiImpl

controller

PromotionController

vo 视图

assembly 组装层。将实体类转化成vo dto

门面 promotion-facade 收敛外部应用接口

基础设施模块 promotion-infra

framework

   web

   SwaggerAutoConfiguration swagger设置

   GlobalExceptionHandler  web异常设置

   db

   MybatisPlusAutoConfiguration 配置mybatisPlus分页插件等

pojo 实体类

mapper dao层

         

promotion-common

dto

enums 业务枚举和业务异常枚举

 PromotionErrorCode

exception 业务异常 

qto 命令模式,按业务行为定义命令

AddQTO

UpdateQTO

DeleteQTO

统一配置类

IErrorCode 

public interface ErrorCode {

    /**
     * 错误码
     */
      Integer getCode();
    /**
     * 错误提示
     */
    private  String getMsg();


}

GlobaclErrorCode 系统错误配置

@Data
@AllArgsConstructor
public enums GlobalErrorCode implements IErrorCode {


   SUCCESS(0,"成功"),
   BED_REQUEST(400,"请求参数不正确")

;
    int code;
    String msg;
   





}

ServiceException

@Data
@EqualsAndHashCode(callSuper = true)
public final class ServerException extends RuntimeException {

    /**
     * 全局错误码
     *
     * @see GlobalErrorCodeConstants
     */
    private Integer code;
    /**
     * 错误提示
     */
    private String message;

    /**
     * 空构造方法,避免反序列化问题
     */
    public ServerException() {
    }

    public ServerException(IErrorCode errorCode) {
        this.code = errorCode.getCode();
        this.message = errorCode.getMsg();
    }

    public ServerException(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

你可能感兴趣的:(微服务,架构,云原生)