应用名
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;
}