蜗牛学苑 Java 学习 Day23|SpringBoot 思维导图复盘

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

1. 概述

  1. Spring 全家桶 SpringFramework 作为底层核心,提供依赖注入、事务、Web、数据访问等能力;其余项目基于 SpringFramework 构建,各司其职。
  2. 原生 SpringFramework 缺点 配置繁琐、入门门槛高、配置复杂。
  3. SpringBoot 核心特点 简化配置、快速开发、企业主流,官方推荐。

2. 入门程序

  1. 需求:Web 应用,浏览器请求返回字符串。
  2. 开发步骤 ①创建工程,勾选 Web 依赖;②编写 Controller,添加注解;③运行 main 方法启动项目。
  3. 打包方式:jar 包,使用内置服务器运行。
  4. 创建项目常见问题 start.spring.io 网络访问失败;备选方案:阿里云脚手架;手动 Maven 工程手动引入依赖。
  5. SpringBoot vs Spring Spring 缺点:配置繁琐、版本管理麻烦;SpringBoot 优点:自动配置、起步依赖。

3. 入门原理解析

  1. main 方法可以启动 Web 服务:spring‑boot‑starter‑web传递依赖 tomcat,内置 Tomcat 自动部署,默认 8080 端口。
  2. 起步依赖 starter 概念:预定义的一组依赖集合,简化引入;命名格式spring‑boot‑starter‑xxx。 常用 starter:
  • spring‑boot‑starter‑web:web 开发全套依赖
  • spring‑boot‑starter‑test:单元测试依赖
  1. 父工程 parent 作用:统一管理依赖版本,无需写 version,减少版本冲突;pom 继承spring‑boot‑starter‑parent,只做依赖管理,不会实际引入依赖。

4.Apifox 接口测试工具

  1. 前后端分离痛点:浏览器只支持 GET,不方便测试 POST 请求。
  2. Apifox 介绍:一体化平台,接口文档、调试、Mock、接口测试;同类工具 Postman、ApiPost。
  3. 使用:下载安装,扫码登录。

5. 请求参数接收

  1. 简单参数
  • 原始方式:HttpServletRequest手动获取参数,手动类型转换。
  • SpringBoot 方式:形参名与请求参数名直接接收;@RequestParam注解映射参数名不一致,required属性控制是否必传。
  1. 实体参数 简单 POJO 实体对象:请求参数名和实体类属性名一致自动封装; 复杂嵌套实体对象:实体中包含另一个实体类型属性,按层级书写自动封装。
  2. 数组集合参数 数组:请求传多值,形参为数组; List 集合:需要搭配@RequestParam注解。
  3. 日期参数 @DateTimeFormat(pattern = "yyyy‑MM‑dd");支持 Date、LocalDateTime;前端日期格式必须和 pattern 完全匹配。
  4. JSON 参数(前后端分离最常用) POST 请求,请求体传 JSON;使用@RequestBody注解;JSON 的 key 与 POJO 属性名对应,自动封装对象。
  5. 路径参数 URL 携带参数/path/{id}@PathVariable获取路径变量;支持多个路径参数。

6. 响应数据

  1. @ResponseBody:把方法返回值直接响应前端,对象 / 集合自动转为 JSON,可写类上、方法上。
  2. @RestController :组合注解 = @Controller + @ResponseBody;类上加该注解,全部方法自动响应数据。
  3. 不同返回类型 返回字符串直接输出文本;返回实体对象自动转 JSON 对象;返回集合 List 自动转 JSON 数组。
  4. 测试工具:Apifox 查看响应 JSON。

二、思维导图制作意图

  1. 梳理 SpringBoot 入门整套知识,理清 SpringBoot 解决原生 Spring 配置繁琐的痛点,搞懂父工程 parent、starter 起步依赖底层原理,理解自动配置思想。
  2. 重点整理请求参数接收的全部场景:简单参数、实体、嵌套对象、集合、日期、JSON、路径参数,区分@RequestParam@RequestBody@PathVariable三者用法,这是接口开发高频考点。
  3. 掌握响应数据原理,理解@RestController组合注解;了解 Apifox 接口测试工具,适配前后端分离开发模式。
  4. 将繁杂的参数接收场景做归类,方便刷题复习,分清各个注解适用场景,避免开发注解乱用。

三、当日学习总结

今日学习 SpringBoot 基础,了解 SpringBoot 解决 Spring 配置复杂的问题,理解 starter 起步依赖和父工程做版本管理的底层原理,掌握 SpringBoot Web 项目创建运行打包。重点学习各类请求参数接收,区分不同参数场景下各个注解的使用,掌握 JSON 接收、路径参数接收;学习响应数据,理解@RestController,后端直接返回 JSON 给前端。使用 Apifox 完成接口调试。SpringBoot 是现在 Java 开发主流框架,参数接收、注解区分是业务开发以及面试高频重点。

Spring Boot的核心注解有哪些?

Spring Boot和Spring有什么联系?

Spring Boot的自动配置原理是什么?

相关推荐
xx~t1 小时前
嵌入式学习22
数据结构·学习·算法·排序算法
Linux-lucky10 小时前
21-Linux学习之旅之HTTPS和安全加固
linux·运维·学习·ubuntu·https
学运维的Kysan12 小时前
暑假运维学习打卡第二十六天8.17
学习
dear_bi_MyOnly12 小时前
AI人工智能分类识别——机器如何学习
人工智能·学习·分类
启雀AI15 小时前
培训平台移动端离线学习方案设计与实现:视频缓存、断点续传与进度同步的工程实践
android·学习·缓存·音视频·企业lms
Bruce_Liuxiaowei17 小时前
从零到可运行:基于 Vue3 + FastAPI + DeepSeek-V3 的 AI 英语单词学习系统全栈实战
人工智能·python·学习·fastapi·全栈·智能体
zhangrelay17 小时前
ROS 2 Lyrical 第9章 计算机视觉与摄像头应用
linux·笔记·学习·ubuntu·机器人·ros2
雪的季节18 小时前
OPENCV学习(补充1)
人工智能·opencv·学习
zjnlswd19 小时前
C#学习笔记2 刘铁锰
笔记·学习