当前位置: 首页 > article >正文

springboot三层架构详细讲解

目录
  • springBoot三层架构
    • 0.简介
    • 1.各层架构
      • 1.1 Controller层
      • 1.2 Service层
      • 1.3 ServiceImpl
      • 1.4 Mapper
      • 1.5 Entity
      • 1.6 Mapper.xml
    • 2.各层之间的联系
      • 2.1 Controller 与 Service
      • 2.2 Service 与 ServiceImpl
      • 2.3 Service 与 Mapper
      • 2.4 Mapper 与 Mapper.xml
      • 2.5 Service 与 Entity
      • 2.6 Controller 与 Entity
    • 3.框架图
    • 4.总结

springBoot三层架构

0.简介

Spring Boot 的三层架构指的是:
1.表示层:这一层通常由 Controller 组成,负责处理 HTTP 请求和向用户展示信息。
2.业务逻辑层:包含 Service 接口及其实现类(ServiceImpl),处理应用程序的核心业务逻辑。
3.数据访问层:由 Mapper 接口和 Mapper.xml 文件组成,负责与数据库交互,执行 CRUD操作。

1.各层架构

1.1 Controller层

作用:处理 HTTP 请求和返回响应给客户端。
结构:通常继承自 @RestController 或使用 @Controller 加上 @RequestMapping。
功能:接收用户输入,调用 Service 层的业务逻辑,处理业务后返回结果。

1.2 Service层

作用:定义业务逻辑。
结构:接口(Service)和实现类(ServiceImpl)。
功能:包含业务操作的抽象和实现,被 Controller 层调用,调用 Mapper 层的数据库操作。

1.3 ServiceImpl

作用:Service 接口的具体实现。
结构:继承或实现 Service 接口,使用 @Service 注解。
功能:实现 Service 层接口中定义的方法,处理具体的业务逻辑,调用 Mapper 层。

1.4 Mapper

作用:数据库操作的抽象。
结构:接口,使用 @Mapper 注解,通常结合 MyBatis 使用。
功能:定义对数据库的 CRUD 操作(创建、读取、更新、删除)。

1.5 Entity

作用:数据实体的抽象。
结构:Java 类,通常包含字段、getter/setter 方法、toString 方法等。
功能:代表数据库中的表,字段对应表的列,用于数据传输和映射。

1.6 Mapper.xml

作用:MyBatis 的映射文件,包含 SQL 语句。
结构:XML 文件,与 Mapper 接口的命名空间相对应。
功能:包含具体的 SQL 语句,与 Mapper 接口中的方法相对应,MyBatis 通过这个文件将方法调用映射到 SQL 执行。

2.各层之间的联系

2.1 Controller 与 Service

Controller 调用 Service 的接口方法来处理业务逻辑,Service 处理完毕后将结果返回给 Controller,Controller 再将结果响应给客户端。

2.2 Service 与 ServiceImpl

Service 是业务逻辑的接口,ServiceImpl 是 Service 接口的具体实现,ServiceImpl 实现了 Service 定义的所有方法。

2.3 Service 与 Mapper

Service 层通过调用 Mapper 层的接口方法来执行数据库操作,Mapper 层返回操作结果给 Service 层。

2.4 Mapper 与 Mapper.xml

Mapper 接口中定义的方法会映射到 Mapper.xml 中的 SQL 语句,MyBatis 框架负责将接口方法的调用转换为实际的 SQL 执行。

2.5 Service 与 Entity

Service 层在处理业务时,会使用 Entity 作为数据传输对象(DTO),将数据库的数据封装为 Entity 对象,或将 Entity 对象的数据持久化到数据库。

2.6 Controller 与 Entity

Controller 层接收来自客户端的数据,通常将这些数据封装到 Entity 对象中,然后传递给 Service 层处理;同样,Service 层处理完毕后,可以将 Entity 对象转换为响应数据发送给客户端。

3.框架图

在这里插入图片描述

4.总结

Spring Boot架构通过其分层设计,提供了一种清晰、模块化的代码组织方式,使得应用开发更加灵活和可维护。它简化了配置和部署流程,支持快速开发和微服务架构,同时整合了大量常用的开发组件,降低了项目搭建和维护的复杂性。此外,Spring Boot的自动配置、健康检查和监控功能,进一步提高了开发效率和应用的可观测性。


http://www.kler.cn/a/579720.html

相关文章:

  • matlab慕课学习3.2+3.3
  • 1433抓鸡工具_1433抓鸡工具在软件安全测试中的重要性及应用
  • 尚硅谷TS快速入门笔记(个人笔记用)
  • Rust语言:开启高效编程之旅
  • mysql的MHA
  • Vue3 路由的路径参数
  • c++中使用递归进行快速排序
  • AI 赋能软件开发:从工具到思维的全面升级
  • Pycharm修改默认执行框架为unittest
  • Java LeetCode 热题 100 回顾40
  • 常见排序算法深度评测:从原理到10万级数据实战
  • Kubernetes ConfigMap 使用方式实验
  • 1-001:MySQL的存储引擎有哪些?它们之间有什么区别?
  • ECMA Script6新特性(上)
  • 在本地部署DeepSeek等大模型时,需警惕的潜在安全风险
  • 深度学习训练Camp:第R5周:天气预测
  • CEH与OSCP:网络安全认证对比分析
  • QSpinBox 介绍
  • 手写 Promise 的实现
  • 【YOLOv12改进trick】医学图像分割网络CMUNeXt引入YOLOv12中,增强全局上下文信息实现涨点,含创新点Python代码,方便发论文