蜗牛学苑 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的自动配置原理是什么?

相关推荐
sunshine22 girl16 小时前
Java学习一 环境配置2 安装和基本使用Idea
java·学习·intellij-idea
Kobebryant-Manba17 小时前
学习Bert微调
人工智能·学习·bert
xian_wwq17 小时前
【学习笔记】深度认知系列-第14讲 端侧AI崛起——为什么AI正在从云端走向本地
人工智能·笔记·学习
我爱cope18 小时前
【计算机网络 | 传输层3:TCP 协议概述:面向连接、可靠传输到底意味着什么?】
网络·网络协议·学习·tcp/ip·计算机网络·传输层
代码的小搬运工20 小时前
KVO学习
学习·ios·cocoa
辣知20 小时前
辣知·化智47 黄帝陵与民族精神归途
学习
知识分享小能手21 小时前
深度学习学习教程,从入门到精通,数值计算 — 知识点详解(4)
人工智能·深度学习·学习
zyf10441621 小时前
暑期实践日志 Day49:复盘题库出题成果,夯实章节考点
学习·计算机网络·剪辑·暑期实践·课题任务
kaixin_啊啊1 天前
多模态学习
学习
m4Rk_1 天前
【论文阅读】Agent 记忆机制(62):DCM-Agent——用双簇记忆化解优化问题的多范式冲突
论文阅读·人工智能·学习·开源·github