(苍穹外卖)项目结构

苍穹外卖项目结构

后端工程基于 maven 进行项目构建,并且进行分模块开发。

1). 用 IDEA 打开初始工程,了解项目的整体结构:

对工程的每个模块作用说明:

序号 名称 说明
1 sky-take-out maven父工程,统一管理依赖版本,聚合其他子模块
2 sky-common 子模块,存放公共类,例如:工具类、常量类、异常类等
3 sky-pojo 子模块,存放实体类、VO、DTO等
4 sky-server 子模块,后端服务,存放配置文件、Controller、Service、Mapper等

对项目整体结构了解后,接下来我们详细分析上述的每个子模块:

  • sky-common: 模块中存放的是一些公共类,可以供其他模块使用

    分析sky-common模块的每个包的作用:

    名称 说明
    constant 存放相关常量类
    context 存放上下文类
    enumeration 项目的枚举类存储
    exception 存放自定义异常类
    json 处理json转换的类
    properties 存放SpringBoot相关的配置属性类
    result 返回结果类的封装
    utils 常用工具类
  • sky-pojo: 模块中存放的是一些 entity、DTO、VO

    分析sky-pojo模块的每个包的作用:

    名称 说明
    Entity 实体,通常和数据库中的表对应
    DTO 数据传输对象,通常用于程序中各层之间传递数据**(前端给后端的数据封装的类)**
    VO 视图对象,为前端展示数据提供的对象**(后端返回给前端的数据封装的类)**
    POJO 普通Java对象,只有属性和对应的getter和setter
  • sky-server: 模块中存放的是 配置文件、配置类、拦截器、controller、service、mapper、启动类等

    分析sky-server模块的每个包的作用:

    名称 说明
    config 存放配置类
    controller 存放controller类
    interceptor 存放拦截器类
    mapper 存放mapper接口
    service 存放service类
    SkyApplication 启动类

小结:

工程的每个模块作用说明:

序号 名称 说明
1 sky-take-out maven父工程,统一管理依赖版本,聚合其他子模块
2 sky-common 子模块,存放公共类,例如:工具类、常量类、异常类等
3 sky-pojo 子模块,存放实体类、VO、DTO等
4 sky-server 子模块,后端服务,存放配置文件、Controller、Service、Mapper等

sky-pojo: 模块中存放的是一些 entity、DTO、VO

名称 说明
Entity 实体,通常和数据库中的表对应
DTO 数据传输对象,通常用于程序中各层之间传递数据**(前端给后端的数据封装的类)**
VO 视图对象,为前端展示数据提供的对象**(后端返回给前端的数据封装的类)**
POJO 普通Java对象,只有属性和对应的getter和setter

sky-common模块的每个包的作用:

名称 说明
constant 存放相关常量类
context 存放上下文类(线程类BaseContext**)**
enumeration 项目的枚举类存储
exception 存放自定义异常类
json 处理json转换的类
properties 存放SpringBoot相关的配置属性类
result 返回结果类的封装
utils 常用工具类

sky-server模块的每个包的作用:

名称 说明
config 存放配置类
controller 存放controller类
interceptor 存放拦截器类(这种拦截方式最常用,实现登录功能)
mapper 存放mapper接口
service 存放service类
SkyApplication 启动类
相关推荐
xiaowu0803 小时前
C#设计模式-状态模式
设计模式·c#·状态模式
wenbin_java10 小时前
设计模式之状态模式:优雅管理对象行为变化
设计模式·状态模式
未定义.22112 小时前
UML-饮料自助销售系统(无法找零)序列图
设计模式·流程图·状态模式·软件工程·需求分析·uml
阿珊和她的猫1 天前
React Hooks 的使用
前端·react.js·状态模式
未定义.2211 天前
UML-饮料自助销售系统(饮料已售完)序列图
设计模式·流程图·状态模式·软件工程·需求分析·uml
GoldenaArcher3 天前
[React] 如何用 Zustand 构建一个响应式 Enum Store?附 RTKQ 实战与 TS 架构落地
react.js·架构·状态模式
Gazer_S7 天前
【lodash的omit函数详解 - 从入门到精通】
javascript·状态模式
阿珊和她的猫16 天前
Manus:通用智能体的架构革命与产业破局
架构·状态模式
Antonio91517 天前
【Q&A】QT有哪些状态模式的设计?
qt·ui·状态模式