微服务项目目录结构

单个服务内分为以下几个模块:

  • 服务接口 api

    为其他服务提供内部调用接口

  • 服务实现 service

    实现业务逻辑

    实现内部调用接口

    实现前端调用接口

  • 服务启动器 starter

    为其他服务提供启动时服务

  • 聚合实体类 aggregation

    aggregation 为其他服务提供聚合实体类

1.服务接口 api

1.1 目录结构

一级目录 功能
api 服务接口
domain 接口用的实体类

2.服务实现 service

2.1 目录结构(自顶而下结构)

一级目录 二级目录 功能
management controller 管理端接口
handler 管理端业务实现
domain 管理端实体类
convert entity转domain的工具类包
internal controller 实现服务接口 api中的api接口,为微服务内部提供服务
handler 内部服务业务实现
component 通用复杂业务逻辑实现
listener 如果有状态机的话会使用
service 对DAO层的封装,通常Cacheable会写到这一层
repository DAO层
domain 通用的实体类,通常为其他domain的查询返回实体的父类
entity 数据库实体类,需要和表结构对应
convert entity转domain的工具类包

2.2 调用关系

image.png

3.服务启动器 starter

没有具体的目录结构规定,通常是实现简单的逻辑,会调用服务接口 api

4.聚合实体类 aggregation

没有具体的目录结构规定,通常是聚合用的实体类

总结:

通常服务接口 api服务启动器 starter聚合实体类 aggregation 模块会打成jar包供其他服务引入调用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容