项目结构
模块划分
目录结构详细说明
- 美观展示版
- 方便复制版
点击目录可展开/折叠
📂src/main/java/com/footprintcat/backend/
🍵BackendApplication.java# 启动类
📂common/# 公共组件、工具、常量、枚举
📂annotation/# 自定义注解
🍵NoRepeatSubmit.java# 防重复提交
🍵Permission.java# 权限校验
📂config/# 全局配置类
🍵JacksonConfig.java# JSON 配置
🍵WebMvcConfig.java# Web 配置
🍵MyBatisPlusConfig.java# MyBatis-Plus 配置
📂constant/# 常量定义
🍵RedisKey.java# Redis键常量
🍵BusinessError.java# 业务错误码
📂context/# 上下文
🍵UserContext.java# 用户上下文(ThreadLocal)
📂exception/# 异常定义
🍵BusinessException.java# 业务异常
🍵GlobalExceptionHandler.java# 全局异常处理器
📂result/# 统一响应
🍵Result.java# 统一响应体
🍵ResultCode.java# 响应码枚举
📂util/# 工具类
🍵StringUtils.java# 字符串工具
🍵DateUtils.java# 日期工具
📂controller/# 统一控制层
📂admin/# 管理端接口
📂request/# 请求对象,按模块分包
📂user/# 用户模块请求对象
🍵UserCreateRequest.java# 创建用户请求
🍵UserUpdateRequest.java# 更新用户请求
🍵UserQueryRequest.java# 查询用户请求
📂order/# 订单模块请求对象
🍵OrderCreateRequest.java# 创建订单请求
🍵OrderQueryRequest.java# 查询订单请求
📂note/# 笔记模块请求对象
🍵NoteCreateRequest.java# 创建笔记请求
🍵NoteQueryRequest.java# 查询笔记请求
📂vo/# 响应对象,按模块分包
📂user/# 用户模块响应对象
🍵UserVO.java# 用户视图对象
🍵UserSimpleVO.java# 用户简略视图对象
📂order/# 订单模块响应对象
🍵OrderVO.java# 订单视图对象
🍵OrderListItemVO.java# 订单列表项视图对象
📂note/# 笔记模块响应对象
🍵NoteVO.java# 笔记视图对象
🎯UserController.java# 用户管理 Controller
🎯OrderController.java# 订单管理 Controller
🎯NoteController.java# 笔记管理 Controller
📂app/# 移动端接口
🎯UserAppController.java# 移动端用户 Controller
🎯OrderAppController.java# 移动端订单 Controller
🎯NoteAppController.java# 移动端笔记 Controller
📄openapi# 开放平台接口
📂modules/# 核心业务模块区
📂user/# 用户模块
📂converter/# 对象转换器
🍵UserConverter.java# MapStruct 接口
📂entity/# 用户实体
🍵User.java# UserEntity
📂do/# 用户数据对象
🍵UserXxxDo.java# UserDO(用于接收自定义mapper sql的查询结果)
📂dto/# 用户数据传输对象
📂request/# 用户请求 DTO
🍵CreateUserRequest.java# 创建用户请求 DTO
🍵UpdateUserRequest.java# 更新用户请求 DTO
🍵UserQueryRequest.java# 查询用户请求 DTO
📂response/# 用户响应 DTO
🍵UserResponse.java# 用户响应 DTO
🍵UserDetailResponse.java# 用户详情响应 DTO
📂mapper/# 用户数据访问层
🍵UserMapper.java# MyBatis-Plus 接口
📂repository/# 用户数据仓储层
🍵UserRepository.java# 业务层可复用逻辑
📂service/# 用户服务层
🍵UserService.java# 用户服务接口
📂impl/# 服务实现类
🍵UserServiceImpl.java# 用户服务实现
📂order/# 订单模块
📂entity/# 订单实体
📄# OrderEntity, OrderItemEntity
📂do/# 订单数据对象
📄# OrderDO
📂dto/# 订单数据传输对象
📄# OrderDTO, OrderCreateDTO等
📂mapper/# 订单数据访问层
📄# OrderMapper, OrderItemMapper
📂service/# 订单服务层
📄# OrderService
📂note/# 笔记模块
📂entity/# 笔记实体
📄# NoteEntity
📂do/# 笔记数据对象
📄# NoteDO
📂dto/# 笔记数据传输对象
📄# NoteDTO
📂mapper/# 笔记数据访问层
📄# NoteMapper
📂service/# 笔记服务层
📄# NoteService
src/main/java/com/footprintcat/backend/
├── BackendApplication.java # 启动类
├── common/ # 公共组件、工具、常量、枚举
│ ├── annotation/ # 自定义注解
│ │ ├── NoRepeatSubmit.java # 防重复提交
│ │ └── Permission.java # 权限校验
│ ├── config/ # 全局配置类
│ │ ├── JacksonConfig.java # JSON 配置
│ │ ├── WebMvcConfig.java # Web 配置
│ │ └── MyBatisPlusConfig.java # MyBatis-Plus 配置
│ ├── constant/ # 常量定义
│ │ ├── RedisKey.java # Redis键常量
│ │ └── BusinessError.java # 业务错误码
│ ├── context/ # 上下文
│ │ └── UserContext.java # 用户上下文(ThreadLocal)
│ ├── exception/ # 异常定义
│ │ ├── BusinessException.java # 业务异常
│ │ └── GlobalExceptionHandler.java # 全局异常处理器
│ ├── result/ # 统一响应
│ │ ├── Result.java # 统一响应体
│ │ └── ResultCode.java # 响应码枚举
│ └── util/ # 工具类
│ ├── StringUtils.java # 字符串工具
│ └── DateUtils.java # 日期工具
├── controller/ # 统一控制层
│ ├── admin/ # 管理端接口
│ │ ├── request/ # 请求对象,按模块分包
│ │ │ ├── user/ # 用户模块请求对象
│ │ │ │ ├── UserCreateRequest.java # 创建用户请求
│ │ │ │ ├── UserUpdateRequest.java # 更新用户请求
│ │ │ │ └── UserQueryRequest.java # 查询用户请求
│ │ │ ├── order/ # 订单模块请求对象
│ │ │ │ ├── OrderCreateRequest.java # 创建订单请求
│ │ │ │ └── OrderQueryRequest.java # 查询订单请求
│ │ │ └── note/ # 笔记模块请求对象
│ │ │ ├── NoteCreateRequest.java # 创建笔记请求
│ │ │ └── NoteQueryRequest.java # 查询笔记请求
│ │ ├── vo/ # 响应对象,按模块分包
│ │ │ ├── user/ # 用户模块响应对象
│ │ │ │ ├── UserVO.java # 用户视图对象
│ │ │ │ └── UserSimpleVO.java # 用户简略视图对象
│ │ │ ├── order/ # 订单模块响应对象
│ │ │ │ ├── OrderVO.java # 订单视图对象
│ │ │ │ └── OrderListItemVO.java # 订单列表项视图对象
│ │ │ └── note/ # 笔记模块响应对象
│ │ │ └── NoteVO.java # 笔记视图对象
│ │ ├── UserController.java # 用户管理 Controller
│ │ ├── OrderController.java # 订单管理 Controller
│ │ └── NoteController.java # 笔记管理 Controller
│ ├── app/ # 移动端接口
│ │ ├── UserAppController.java # 移动端用户 Controller
│ │ ├── OrderAppController.java # 移动端订单 Controller
│ │ └── NoteAppController.java # 移动端笔记 Controller
│ └── openapi/ # 开放平台接口
└── modules/ # 核心业务模块区
├── user/ # 用户模块
│ ├── converter/ # 对象转换器
│ │ └── UserConverter.java # MapStruct 接口
│ ├── entity/ # 用户实体
│ │ └── User.java # UserEntity
│ ├── do/ # 用户数据对象
│ │ └── UserXxxDo.java # UserDO(用于接收自定义mapper sql的查询结果)
│ ├── dto/ # 用户数据传输对象
│ │ ├── request/ # 用户请求 DTO
│ │ │ ├── CreateUserRequest.java # 创建用户请求 DTO
│ │ │ ├── UpdateUserRequest.java # 更新用户请求 DTO
│ │ │ └── UserQueryRequest.java # 查询用户请求 DTO
│ │ └── response/ # 用户响应 DTO
│ │ ├── UserResponse.java # 用户响应 DTO
│ │ └── UserDetailResponse.java # 用户详情响应 DTO
│ ├── mapper/ # 用户数据访问层
│ │ └── UserMapper.java # MyBatis-Plus 接口
│ ├── repository/ # 用户数据仓储层
│ │ └── UserRepository.java # 业务层可复用逻辑
│ └── service/ # 用户服务层
│ ├── UserService.java # 用户服务接口
│ └── impl/ # 服务实现类
│ └── UserServiceImpl.java # 用户服务实现
├── order/ # 订单模块
│ ├── entity/ # 订单实体
│ │ └── # OrderEntity, OrderItemEntity
│ ├── do/ # 订单数据对象
│ │ └── # OrderDO
│ ├── dto/ # 订单数据传输对象
│ │ └── # OrderDTO, OrderCreateDTO等
│ ├── mapper/ # 订单数据访问层
│ │ └── # OrderMapper, OrderItemMapper
│ └── service/ # 订单服务层
│ └── # OrderService
└── note/ # 笔记模块
├── entity/ # 笔记实体
│ └── # NoteEntity
├── do/ # 笔记数据对象
│ └── # NoteDO
├── dto/ # 笔记数据传输对象
│ └── # NoteDTO
├── mapper/ # 笔记数据访问层
│ └── # NoteMapper
└── service/ # 笔记服务层
└── # NoteService