← 返回心得列表

Spring Boot 项目分层架构的实践总结

2026-09-20 Java
从 Controller 到 Mapper 的分层设计,讲清为什么要分层、每层该干什么。

Spring Boot 项目里最常见的结构就是分层:Controller、Service、Mapper 三层各司其职。很多人照做,却说不清为什么要这样分。这篇文章用大白话讲清楚分层的价值。

为什么分层

分层的核心目的只有一个:让代码各干各的,互不越权。Controller 负责接收请求和返回结果,Service 负责业务逻辑,Mapper 只负责和数据库打交道。

每一层该做什么

常见的错误

最典型的错误是 Controller 直接注入 Mapper,跳过 Service 层。这样业务逻辑散落在 Controller 里,一旦逻辑变复杂,Controller 会越来越臃肿,难以维护。

// 错误示范:Controller 直接注入 Mapper
@RestController
public class UserController {
    @Autowired
    private UserMapper userMapper;
}

总结

分层不是教条,而是让代码在变复杂后依然可控。坚持 Controller 只调 Service,Service 才调 Mapper,项目会清爽很多。