微服务项目规范.md 1.5 KB

微服务项目规范

base-pom

公司所有项目依赖统一管理. 任何服务中引入新的依赖后,需要在base-pom中添加依赖管理

common

common-core:提供了基本的公共类.

common-spring:各种中间件或工具与spring融合的增强

common-mvc:与springmvc相关的技术的增强和配置

微服务结构

project是maven主项目, 以base-pom为parent.

controller,service,persistence,model是module,以project为parent.

model

model分为entity,DTO,VO

  • entity:常规模型,通常与数据库对应(不绝对).
  • DTO:服务间数据传输,临时对象,都可以使用DTO.
  • VO:展示层数据传输

除了以上三种,不能有更多model命名方式.

persistence

依赖model层. 简单查询可以直接使用mybatisplus中提供的IServiceBaseMapper进行查询,不需要写sql;

复杂查询,在mapper.xml中写sql;

每个服务只能连接自己的数据库, 不能直连其他数据库, 如果需要从其他数据库读写数据, 应该通过其他服务器的接口.

service

主要代码都在该层. 所有service必须有接口. configspring相关配置 constant全局通用静态变量 consumer服务调用者,使用feign job任务调度 listener消息队列消费者 dto数据模型 model数据模型 implservice接口实现

controller

控制器层,分为web控制器和api控制器. web控制器用于对外接口,api控制用于内部接口

该层只做数据路由, 不能包含主要逻辑.

provider

提供可供其他服务调用的api.