单体项目结构

二、层级调用流程(核心执行顺序)

前端请求 → Controller → DTO 接收参数 → Service 业务层 → Mapper 持久层 → MySQLService 层可调用:Redis 工具、OSS 工具、自定义工具、ThreadLocal 上下文、定时任务

三、每层职责详细说明

  1. controller 控制层只做三件事:接收参数、调用 service、返回统一 Result,禁止写业务逻辑

  2. service 业务层核心业务、事务、多表操作、缓存逻辑、数据组装;所有复杂逻辑放这里

  3. mapper 持久层仅负责数据库操作,不处理业务

  4. entity(PO)与数据库表完全映射,只存字段,不做传输

  5. DTO前端传给后端的参数载体,做参数校验

  6. VO后端返回给前端的数据载体,封装组装后数据,脱敏

  7. config框架配置、拦截器、插件、第三方组件初始化

  8. common全局公共代码:工具、异常、返回体、常量、上下文

四、包分层规范口诀

控制收参,服务写业务,Mapper 操作库;PO 映射表,DTO 收请求,VO 返前端;公共工具放 common,所有配置归 config。

相关推荐
wuqingshun3141597 小时前
MySQL 如何解决深度分页问题?
java·mysql·面试
buhuizhiyuci7 小时前
【算法篇】位运算 —— 基础篇
java·数据库·算法
laboratory agent开发7 小时前
企业AI Agent落地前,先回答四个工程问题
java·前端·人工智能
微三云 - 廖会灵 (私域系统开发)7 小时前
电商系统国际化架构设计:多语言、多币种、多时区、多税制的全链路实现
java·前端·数据库
XS0301067 小时前
Spring AI 第二课-流式输出 & 运行时动态参数配置
java·人工智能·spring
孬甭_7 小时前
C++ string类
开发语言·c++
额恩667 小时前
阶段五:HttpOnly Cookie 登录持久化
java·spring
Python图像识别-18 小时前
基于yolov8的钢铁缺陷检测系统-2027毕业版(UI界面+Python项目源码+模型+标注好的数据集)
开发语言·python·yolo
sycmancia8 小时前
Qt——多线程与界面组件的通信
开发语言·qt·算法