JavaWeb从0到1-DAY6-SpringBoot Web 入门
SpringBoot Web 入门学习笔记
一、这一章在讲什么
这一章主要学习 SpringBoot Web 的基础开发流程,包括 Spring 生态、SpringBoot 项目创建、项目结构以及最简单的 Web 请求处理。
SpringBoot 的核心目标是:让 Java Web 开发变得更简单、更快速。
以前开发 JavaWeb 需要手动配置 Tomcat、XML、各种 jar 包,而 SpringBoot 基本实现了“开箱即用”。
本章重点是学会:
- 创建 SpringBoot 项目
- 启动 Web 项目
- 编写 Controller
- 接收浏览器请求
- 返回响应结果
本章本质就是:
浏览器请求
→ SpringBoot 接收
→ Java 方法处理
→ 返回结果
二、核心概念
1. Spring 生态
是什么
Spring 不是单独一个框架,而是一整套开发生态。
包括:
| 项目 | 作用 |
|---|---|
| Spring Framework | Spring 核心框架 |
| Spring Boot | 简化 Spring 开发 |
| Spring Data | 数据库操作 |
| Spring Security | 安全权限 |
| Spring Cloud | 微服务开发 |
为什么引入
传统 Java 开发:
- 配置复杂
- jar 包多
- Tomcat 部署麻烦
Spring 生态就是为了解决这些问题。
原理
Spring 提供各种模块:
需要什么功能
→ 导入对应模块
SpringBoot 则负责自动配置。
易混淆点
很多初学者会混淆:
Spring ≠ SpringBoot
关系:
SpringBoot 基于 Spring
SpringBoot 本质是:
Spring 的快速开发脚手架
2. SpringBoot
是什么
SpringBoot 是快速开发 Spring 项目的框架。
作用
核心作用:
- 自动配置
- 快速启动
- 简化开发
- 内嵌 Tomcat
原理
SpringBoot 启动时会:
- 扫描项目
- 创建 Spring 容器
- 自动配置组件
- 启动 Tomcat
易混淆点
很多人以为:
SpringBoot = 新框架
实际上:
SpringBoot 本质还是 Spring
只是帮你省掉大量配置。
3. Controller
是什么
专门处理请求的类。
例如:
@RestController
public class HelloController {
@RequestMapping("/hello")
public String hello(){
return "hello springboot";
}
}
作用
负责:
接收请求
→ 处理逻辑
→ 返回结果
原理
SpringBoot 启动时会扫描:
@RestController
然后建立:
请求路径
→ Java方法
的映射关系。
易混淆点
Controller 只是“请求入口”。
真正复杂业务通常放在:
Service
层。
4. @RequestMapping
是什么
请求路径映射注解。
作用
用于指定:
哪个 URL 对应哪个方法
原理
例如:
@RequestMapping("/hello")
浏览器访问:
/hello
SpringBoot 就会调用对应方法。
易混淆点
它写的是:
请求路径
不是方法名。
5. pom.xml
是什么
Maven 核心配置文件。
作用
负责:
- 管理依赖
- 下载 jar 包
- 项目构建
原理
例如:
<dependency>
表示导入一个功能模块。
SpringBoot 大量功能都来自依赖。
易混淆点
很多人以为:
代码决定功能
其实:
依赖才决定项目具备什么能力
三、重难点
1. 为什么运行 main() 就能启动网站?
结论
因为 SpringBoot 内嵌了 Tomcat。
原因
运行:
SpringApplication.run(...)
时:
- Spring 容器启动
- Tomcat 启动
- Web 服务启动
所以浏览器能访问。
通俗比喻
以前:
自己买发动机组装车
现在:
SpringBoot 直接给你整车
2. @RestController 的本质
结论
告诉 Spring:
这是一个请求处理类
原因
SpringBoot 启动时会扫描注解。
扫描到后:
这个类就能接收网页请求
小例子
相当于贴标签:
“我是控制器”
3. 请求是如何找到方法的?
结论
通过:
@RequestMapping
建立路径映射。
原因
SpringBoot 内部维护:
URL
→ Java方法
对应关系。
小例子
访问:
/hello
SpringBoot 就会找到:
hello()
执行。
4. 为什么 Controller 可能失效?
结论
可能没有被 SpringBoot 扫描到。
原因
SpringBoot 默认:
只扫描启动类所在包及子包
小例子
启动类:
com.example
Controller 最好放:
com.example.controller
四、代码理解
最小 Web 示例
class HelloController {
@RequestMapping("/hello")
public String hello(){
return "hello springboot";
}
}
关键代码解释
第一行
@RestController
说明:
这是请求处理类
第二行
@RequestMapping("/hello")
说明:
访问 /hello 时执行此方法
方法返回值
return "hello springboot";
浏览器最终会显示:
hello springboot
启动类
@SpringBootApplication
public class DemoApplication {
public static void main(String\[\] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
核心作用
SpringApplication.run(...)
负责:
- 启动 Spring
- 启动 Tomcat
- 启动 Web 服务
五、易错点
1. 忘记加 @RestController
结果:
浏览器访问失败
2. Controller 不在扫描范围
导致:
接口无法访问
3. 8080 端口被占用
项目启动失败。
4. 忘记导入 Web 依赖
没有:
Spring Web
就无法开发 Web 项目。
5. 路径写错
例如:
@RequestMapping("hello")
规范应写:
@RequestMapping("/hello")
六、记忆口诀 / 通俗比喻
SpringBoot 核心口诀
运行 main
网站启动
访问路径
执行方法
Controller 理解
Controller 就是“前台接待”
浏览器来请求:
Controller 接待
→ 调用方法
→ 返回结果
@RequestMapping
路径和方法绑定器
七、应用
实际开发中怎么用?
SpringBoot Web 是:
- 后端接口开发基础
- 前后端分离基础
- 企业 Java 开发基础
以后:
- 登录
- 注册
- 查询数据
- 文件上传
- 支付接口
本质都是:
浏览器/前端发请求
→ Controller接收
→ Java处理
→ 返回数据
例如:
淘宝商品查询
微信登录
外卖订单接口
本质都属于 SpringBoot Web 请求处理。
八、最终总结
SpringBoot 是基于 Spring 的快速开发框架,核心目标是简化 Java Web 开发。
SpringBoot 内嵌 Tomcat,因此运行 main 方法就能启动网站。
Controller 用于处理请求,@RequestMapping 用于建立 URL 和 Java 方法的映射关系。
SpringBoot 启动时会自动扫描组件并完成自动配置。
本章最核心的本质就是:
请求路径
→ 找到方法
→ 执行代码
→ 返回结果
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)