蜗牛学苑 Java 智能体学习 Day24|SpringBoot 整合 MyBatis、分层解耦思维导图复盘

一、思维导图整体知识结构梳理

1.SpringBoot 整合 MyBatis

  1. 创建 springboot 工程,导入依赖 导入 mybatis 起步依赖、mysql 驱动依赖、springboot 单元测试依赖。
  2. 配置 MyBatisapplication.properties配置数据库四大参数:驱动类名、连接 url、用户名、密码。
  3. 数据准备 创建 user 用户表,编写测试数据;创建 User 实体类,实体属性和表字段一一对应,提供 get、set 方法。
  4. 编写 SQL 语句 创建 Mapper 接口,添加@Mapper注解;使用@Select注解编写 SQL,接口会自动生成代理实现类,交给 IOC 容器管理。
  5. 单元测试 添加@SpringBootTest注解,@Autowired注入 Mapper,编写测试方法完成功能测试。

2.SpringBoot 配置文件

  1. 配置文件介绍
  • application.properties:key‑value 格式
  • application.yml/application.yaml:yml 格式,层级清晰,开发推荐使用
  1. YAML 语法 大小写敏感;冒号后必须加空格;缩进代表层级,禁止使用 Tab,只能空格;#代表注释;代表集合。
  2. YAML 常见数据格式 :对象、数组、集合;#后面不要直接写 Tab,避免解析报错。
  3. 配置文件切换:properties 与 yml 可以共存,yml 优先级更高。

3. 分层解耦案例

  1. 需求说明:加载解析 xml 数据,查询返回统一结果集,页面渲染展示。
  2. 准备工作:导入工具类、实体类、xml 资源文件,pom 开启资源拷贝。
  3. 实现步骤:导入静态页面,编写 Controller 接收请求,完成数据查询与页面返回。
  4. 问题分析:全部代码写在 Controller 中,代码复用性差、维护困难。

4. 三层架构

  1. 分层介绍 单一职责原则:一个类 / 方法只做一件事
  • Controller 控制层:接收请求,封装返回数据
  • Service 业务层:处理业务逻辑
  • Dao 持久层:数据库增删改查 执行流程:浏览器→Controller→Service→Dao 优点:复用性强、便于维护、利于扩展。
  1. 代码拆分
  • Controller:接收请求
  • Service:定义接口 + 实现类
  • Dao:Mapper 接口,MyBatis 代理生成实现类
  1. 耦合问题:模块之间 new 对象直接创建,代码耦合度高。
  2. 解耦思想
  • 不使用 new 创建对象,交给 IOC 容器管理对象
  • 从容器获取对象,实现依赖注入

5.IOC&DI 入门

  1. IOC 控制反转:把对象创建交给 IOC 容器管理,移除代码中 new 对象。
  2. DI 依赖注入:容器自动装配依赖对象。
  3. Bean 的声明(注解)
  • @Component:基础注解
  • @Controller:控制层
  • @Service:业务层
  • @Repository:数据访问层 bean 名称:默认类名首字母小写,可通过 value 指定; @ComponentScan组件扫描:启动类默认扫描当前包及子包。
  1. 依赖注入详解
  • @Autowired:默认按类型装配
  • 多个同类型 Bean 解决方案:@Primary@Qualifier配合@Autowired@Resource按名称注入
  • @Autowired@Resource区别:@Autowired按类型;@Resource默认按名称注入。

二、思维导图制作意图

  1. 梳理 SpringBoot 整合 MyBatis 完整流程,掌握工程创建、依赖导入、配置文件编写、Mapper 注解开发、单元测试整套流程,熟练区分 properties 与 yml 配置文件语法。
  2. 通过业务案例引出三层架构,理解分层开发的意义;重点理解 IOC 控制反转、DI 依赖注入核心思想,解决代码耦合问题。
  3. 整理 IOC 容器全部注解,区分@Component/@Controller/@Service/@Repository,对比@Autowired@Resource的用法差异,理清多 Bean 冲突的解决办法,这是 Spring 核心面试考点。
  4. 将配置语法、分层流程、注解归类整理,便于快速复习,避免开发中注解误用、yml 格式报错。

三、当日学习总结

今日学习 SpringBoot 整合 MyBatis,掌握 yml 配置文件语法,完成 MyBatis 注解方式开发,实现数据库查询。理解传统 Controller 写全部代码带来的耦合问题,学习 Java 后端标准三层架构:Controller‑Service‑Dao。理解 IOC 控制反转,不再手动 new 对象,把对象交给 Spring 容器管理;DI 依赖注入实现对象装配,掌握各类组件注解、依赖注入注解,以及多个 Bean 冲突时的处理方案。IOC、DI 是 Spring 最核心底层思想,三层架构是企业项目标准开发模式,属于业务开发、面试高频重点。

相关推荐
瀚高PG实验室2 小时前
SQL优化案例:使用分区表优化SQL查询性能
linux·服务器·数据库·sql·microsoft·postgresql
SelectDB2 小时前
15 分钟搭建 PostgreSQL + Apache Iceberg + Apache Doris 的湖仓分析平台
数据库
编程圈子2 小时前
电机驱动开发学习25. 弱磁控制与全速域增益调度
驱动开发·学习
SelectDB2 小时前
科大讯飞可观测性底座:从 ES/Loki 到 Apache Doris 的可观测存储分析升级实践
数据库
SelectDB2 小时前
Cisco WebEx 数据平台统一改造:基于 Apache Doris / SelectDB 替换 Trino、Pinot、Iceberg 及 Kyuubi
数据库
Be for thing2 小时前
【嵌入式成长3】STC89C51外部中断|中断原理、寄存器、中断服务函数
单片机·嵌入式硬件·学习
数据技术说2 小时前
MySQL 和 PostgreSQL 的 CDC 方案到底有什么区别?
数据库·架构
SelectDB2 小时前
灵犀科技统一数据服务平台:基于 Apache Doris / SelectDB 实现存储降本 60%、计算提效 10 倍
数据库
带多刺的玫瑰3 小时前
Leecode#4刷题之寻找两个正序数组的中位数
java·前端·算法
让学习成为一种生活方式3 小时前
KMC 3.2.4 安装与使用--生信工具108
数据库