三层架构(Three-Tier Architecture)
三层架构将应用程序分为三个主要层次:表示层(Presentation Layer、Controller)、业务逻辑层(Business Logic Layer、Service)和数据访问层(Data Access Layer、DAO)。
- 表示层(Presentation Layer、Controller) :表示层是用户与应用程序交互的界面,负责接收用户的输入并展示相应的输出。
- 业务逻辑层(Business Logic Layer、Service) :业务逻辑层包含应用程序的核心业务逻辑,负责处理业务规则、计算和流程控制等任务。
- 数据访问层(Data Access Layer、DAO) :数据访问层负责与数据源(如数据库、文件系统等)进行交互,执行数据的增删改查等操作。
层级 | 包名/类名 | 类名/对象 | 解释 |
---|---|---|---|
表示层 | web | XxxController | 处理HTTP请求,返回响应 |
web.vo | XxxVO | 视图对象,用于前端展示 | |
web.form | XxxForm | 表单对象,用于接收请求参数 | |
业务逻辑层 | service | XxxService | 定义业务逻辑接口 |
service.impl | XxxServiceImpl | 业务逻辑的具体实现 | |
manager | XxxManager | 封装跨服务调用的管理器 | |
数据访问层 | dao/repository | XxxDao/XxxRepository | 定义数据访问接口 |
dao.impl | XxxDaoImpl | 实现数据访问操作 | |
mapper | XxxMapper | MyBatis Mapper接口 | |
entity | XxxEntity | 映射数据库表的实体类 | |
工具类 | util | XxxUtil | 通用工具类 |
常量 | constant | XxxConstant | 常量定义 |
配置 | config | XxxConfig | 应用配置类 |
启动类 | com.example | Application | Spring Boot启动类 |
三层架构的核心设计理念是“关注点分离”(Separation of Concerns, SoC),旨在将不同的功能区分开来,以降低系统各部分之间的依赖性。