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

Springboot | 初识Springboot 从“手动做饭”到“点外卖”的编程革命

一文读懂Spring Boot:从“手动做饭”到“点外卖”的编程革命

如果你是编程新手,可能听过“Spring”这个词,但总觉得它像个复杂的“大厨房”——要自己买菜、切菜、调火候,少一步就可能搞砸。而今天要聊的Spring Boot,就像把这个大厨房变成了“外卖平台”:你只管说要“宫保鸡丁”,它直接给你做好送到手上,不用管锅碗瓢盆。

在这里插入图片描述

一、Spring Boot到底是什么?

先举个生活例子:
想喝一杯奶茶,传统方式是:自己买茶叶、牛奶、糖,煮茶、调比例、冷藏(步骤多且容易出错);
而Spring Boot就像“奶茶店”:你说“要一杯珍珠奶茶”,店员直接给你做好,不用管茶叶放多少、牛奶烫到多少度。

专业解释:Spring Boot是基于Spring的“简化工具”,它帮我们省略了Spring开发中繁琐的配置(比如XML文件、手动导包),让开发者能快速搭建一个可运行的项目。

二、为什么要用Spring Boot?

假设你要开一家小超市(开发一个简单的Web应用):

  • 传统Spring:你得自己找店面(配置服务器)、买货架(导入依赖)、画价签(写XML配置),折腾半天还没开始进货(写业务逻辑);
  • Spring Boot:店面自带货架(内置服务器)、货架上自动摆好常用商品(starter依赖)、价签自动生成(自动配置),你直接进货就行。

核心优势总结:

  1. 少配置:不用写大量XML,注解+默认配置搞定80%需求;
  2. 快启动:内置Tomcat等服务器,直接运行Java类就能启动项目;
  3. 易扩展:需要新功能时,加个依赖(比如连接数据库)就行,不用改原有配置。

三、Spring Boot核心特性

1. 自动配置(Auto-configuration)

就像去咖啡店点“美式咖啡”:默认是黑咖啡,不用你说“不加奶不加糖”——Spring Boot会根据你导入的依赖,自动配置好相关功能。

比如你导入了spring-boot-starter-web依赖(Web开发套餐),它会自动配置好Tomcat服务器、Spring MVC框架,你直接写接口就行。

2. Starter依赖(Starter Dependencies)

类似“火锅底料套餐”:买一包“麻辣火锅底料”,里面已经有辣椒、花椒、香料,不用单独买。

Spring Boot的starter就是“功能套餐”:

  • spring-boot-starter-web:Web开发套餐(含Tomcat、MVC);
  • spring-boot-starter-data-jpa:数据库操作套餐(含ORM框架);
  • spring-boot-starter-test:测试套餐(含Junit、Mockito)。

3. 嵌入式服务器(Embedded Servers)

传统开发需要手动装Tomcat、配置端口;Spring Boot把Tomcat“打包”进项目,就像“自热火锅”——不用找锅,自带加热包,拆开就能用。

4. actuator(监控功能)

就像家里的“智能电表”:实时显示用电量,出问题时提醒你。

Spring Boot的actuator可以监控项目健康状态、内存使用、接口调用量,方便排查问题。

四、动手实践:用Spring Boot做一个“图书小管家”

我们来做一个简单的功能:记录图书信息(书名、作者),能查询所有图书,也能添加新图书。

步骤1:创建项目(像搭积木一样简单)

  1. 打开 Spring Initializr(Spring官方项目生成器);
  2. 填写信息:
    • Project:Maven(包管理工具);
    • Language:Java;
    • Spring Boot:选最新稳定版(比如3.5.6);
    • 填写Group(组织名,比如com.example)和Artifact(项目名,比如bookmanager);
  3. 选依赖:左侧搜Spring Web(Web功能),勾选后点“Generate”下载项目压缩包。

在这里插入图片描述

步骤2:解压项目,用IDE打开(比如IDEA、VSCode)

在这里插入图片描述

项目结构像这样(重点看这几个文件):

bookmanager/
├─ src/
│  ├─ main/
│  │  ├─ java/
│  │  │  └─ com/example/bookmanager/
│  │  │     └─ BookmanagerApplication.java  // 启动类
│  │  └─ resources/
│  │     └─ application.properties  // 配置文件
└─ pom.xml  // 依赖管理(类似购物清单)

在这里插入图片描述
在这里插入图片描述
打开pom.xml文件,可以看到我们在初始化工具里选择的依赖项都已填写好。

在这里插入图片描述

步骤3:写代码(核心功能实现)

① 定义“图书”实体(像给图书做个“身份证”)

新建com.example.bookmanager.entity.Book类:

package com.example.bookmanager.entity;public class Book {private Long id;  // 图书编号private String name;  // 书名private String author;  // 作者// 构造方法(方便创建对象)public Book(Long id, String name, String author) {this.id = id;this.name = name;this.author = author;}// Getter和Setter(让外部能读取/修改属性)public Long getId() { return id; }public void setId(Long id) { this.id = id; }public String getName() { return name; }public void setName(String name) { this.name = name; }public String getAuthor() { return author; }public void setAuthor(String author) { this.author = author; }
}

若引入Lombok,并在类名上增加@Data注解,可不用写构造函数和setter及getter。

在这里插入图片描述

② 写控制器(处理用户请求,像超市收银员)

新建com.example.bookmanager.controller.BookController类:

package com.example.bookmanager.controller;import com.example.bookmanager.entity.Book;
import org.springframework.web.bind.annotation.*;import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicLong;@RestController  // 标记这是一个处理HTTP请求的控制器
public class BookController {// 用List暂存图书(实际项目应该用数据库,这里简化)private final List<Book> books = new ArrayList<>();// 自动生成唯一ID(AtomicLong保证多线程安全)private final AtomicLong idGenerator = new AtomicLong();// 0. 初始化两本书的演示数据@GetMapping("/init")public String doInit() {Book b1 = new Book();b1.setId(idGenerator.incrementAndGet());b1.setAuthor("刘慈欣");b1.setName("三体");books.add(b1);Book b2 = new Book();b2.setId(idGenerator.incrementAndGet());b2.setAuthor("罗贯中");b2.setName("三国");books.add(b2);return new String();}// 1. 查询所有图书:GET请求,访问路径 /books@GetMapping("/books")public List<Book> getAllBooks() {return books;  // 直接返回图书列表}// 2. 添加图书:POST请求,访问路径 /books,参数从请求体拿@PostMapping("/books")public Book addBook(@RequestBody Book book) {// 生成新ID并设置给图书Long newId = idGenerator.incrementAndGet();book.setId(newId);// 把图书加入列表books.add(book);return book;  // 返回添加的图书(含ID)}
}

步骤4:启动项目(像按下“电源键”)

运行BookmanagerApplication.java里的main方法,看到类似日志说明启动成功:

Tomcat started on port 8080 (http)
Started BookmanagerApplication in 2.3 seconds

在这里插入图片描述

在这里插入图片描述

步骤5:测试功能

①初始化

在浏览器中直接访问http://127.0.0.1:8080/init
在这里插入图片描述

② 查询所有图书

浏览器访问http://localhost:8080/books,会看到初始化时添加到list中的图书信息:

[{"id":1,"name":"三体","author":"刘慈欣"},{"id":2,"name":"三国","author":"罗贯中"}]
② 添加图书(用ApiPost、Postman或curl)

这里用国产的ApiPost举例:
(下载免费版即可)

  • 新建接口
    在这里插入图片描述

  • 方法选POST,地址http://127.0.0.1:8080/books

  • bodyrawJSON,输入:

    {"name": "Spring Boot实战","author": "张三"
    }
    
  • 点“发送|Send”,会返回添加的图书(ID自动增长)。
    在这里插入图片描述
    再次执行步骤②,可以看到三本图书信息

在这里插入图片描述

五、Spring Boot能做什么?

  • 网站后端:像电商网站的商品查询、下单接口;
  • 小程序后端:微信小程序的用户登录、数据提交功能;
  • 企业应用:OA系统、CRM系统的业务逻辑处理;
  • 微服务:和Spring Cloud配合,做大型分布式系统(比如外卖平台的订单、支付、配送服务)。

六、总结

Spring Boot的核心就是“简化”:把复杂的配置交给框架,让开发者专注于业务逻辑。就像从“手动织布”到“机器织布”,效率提升不止一点点。

如果你是新手,从这个“图书小管家”例子入手,慢慢尝试加功能(比如删除图书、按作者查询),很快就能掌握Spring Boot的精髓~

最后

编程的本质是解决问题,框架是帮我们更高效解决问题的工具。Spring Boot就是这样一个“趁手的工具”,赶紧用起来吧!

http://www.dtcms.com/a/517641.html

相关文章:

  • 网站建设高凯里市住房和城乡建设局网站
  • 做网站需要了解哪些知识做餐饮要看的网站
  • 广东广州电脑个人建站排版设计技巧
  • 网站做的好看的山东ui设计培训班
  • 做网站的得花多少钱织梦 网站公告
  • 证券公司网站建设方案靖江网站优化
  • 游戏网站做关键字百度一下你就知道移动官网
  • 四川省城乡和建设厅网站做团购的家居网站有哪些
  • 购物网站开发的背景和意义做网站的公司怎么做抖音账号
  • 扬州市城乡建设局网站西安360免费做网站
  • 照片做视频的软件 模板下载网站好学做视频t的网站
  • 本地建设网站软件wordpress页面中设置网址导航插件
  • 百度网站结构建设银行荆门招聘网站
  • 南头做网站公司为什么做这个网站项目
  • 湘大oj-回文串问题练习
  • C语言——链表的基础操作
  • 单页面竞价网站衡水电商网站建设价格
  • 做海报的网站知乎个人推广app的妙招
  • 如何管理好一个网站wordpress主题百度
  • 上海平台网站建设报价在韩国注册公司需要什么条件
  • 老板说做个网站我要怎么做江宁滨江网站建设
  • 网站建设课程大纲聊城手机网站建设电话
  • Heroku 部署及问题解决
  • 如何做网站热力图yii2 wordpress
  • 锦州市做网站自助建站平台搭建
  • 网站的模块怎么做网站建设方案书写
  • 俄语 网站app store怎么调回中文
  • 贵州专业网站建设公司哪家好纯静态企业网站
  • 水产养殖网站模板源码网站建设与管理实训总结
  • php网站建设找哪家好wordpress 图片路径