Hello!彦祖们,从今天开始我将更新一波超详细的SpringBoot的图文教程,感兴趣的老铁给个关注+点赞 支持一下呗,最好再评论一个666,O(∩_∩)O哈哈~(贪心了)
================点个关注吧================

=========================================
🌲 SpringBoot 简介
🌾 SpringBoot 优点
在您第1次接触和学习Spring框架的时候,是否因为其繁杂的配置⽽退却了?在你第n次使⽤Spring框架的时候,是否觉得⼀堆反复黏贴的配置有⼀些厌烦?那么您就不妨来试试使⽤SpringBoot来让你更 易上⼿,更简单快捷地构建Spring应⽤!
SpringBoot让我们的Spring应⽤变的更轻量化。⽐如:你可以仅仅依靠⼀个Java类来运⾏⼀个Spring 应用。你也可以打包你的应⽤为jar并通过使⽤java -jar来运⾏你的SpringWeb应⽤。
SpringBoot的主要优点:
- 为所有Spring开发者更快的⼊⻔
- 开箱即⽤,提供各种默认配置来简化项⽬配置
- 内嵌式容器简化Web项⽬
- 没有冗余代码⽣成和XML配置的要求
以后我们和前端开发人员协同开发,而前端开发人员需要测试前端程序就需要后端开启服务器,这就受制于后端开发人员。为了摆脱这个受制,前端开发人员尝试着在自己电脑上安装 Tomcat 和 Idea ,在自己电脑上启动后端程序,这显然不现实。

我们后端可以将 SpringBoot 工程打成 jar 包,该 jar 包运行不依赖于 Tomcat 和 Idea 这些工具也可以正常运行,只是这个 jar 包在运行过程中连接和我们自己程序相同的 Mysql 数据库即可。这样就可以解决这个问题,如下图:

🌾 微服务介绍
微服务:是一种架构风格(服务微化),一个应用应该是一组小型服务;可以通过 HTTP 的方式进行互通;

微服务:每一个功能元素最终都是一个可独立替换和独立升级的软件单元:

如果把基于微服务架构的软件比作是一个大厦,钢筋混凝土结构就是spring cloud,而砖头瓦块等就是spring boot。微服务的一个一个服务是用spring boot开发的,spring cloud提供服务注册与发现、负载均衡、API网管、熔断路由、配置中心等框架性服务,当然一个完整的微服务系统有很多其他的内容,例如服务拆分、监控、限流降级等等
🌲 SpringBoot 快速入门
本章主要⽬标完成Spring Boot基础项⽬的构建,并且实现⼀个简单的Http请求处理,通过这个例⼦对 SpringBoot有⼀个初步的了解,并体验其结构简单、开发快速的特性。
🌾系统要求
- Java 17 及以上(SpringBoot 3.0 仅自持JDK17及以上的版本)
- Spring Framework 4.1.5 及以上
- SpringBoot 3.0 及以上
🌾 开发步骤
SpringBoot 开发起来特别简单,分为如下几步:
- 创建新项目或者模块,选择Spring初始化,并配置模块相关基础信息
- 选择当前模块需要使用的技术集
- 开发控制器类
- 运行自动生成的Application类‘
知道了 SpringBoot 的开发步骤后,接下来我们进行具体的操作
🍁 创建新项目
- 点击 File 选择 New Module

- 选择 Spring Initializr ,用来创建 SpringBoot 工程

- 对 SpringBoot 工程进行相关的设置

- 选中 Web,然后勾选 Spring Web
由于我们需要开发一个 web 程序,使用到了 SpringMVC 技术,所以按照下图红框进行勾选

- 下图界面不需要任何修改,直接点击 Finish 完成 SpringBoot 工程的构建

经过以上步骤后就创建了如下结构的模块,它会帮我们自动生成一个 Application 类,而该类则是我们这个项目的启动类。

如果创建好项目之后,pom.xml 关于Maven的的插件报错,如下图所示:

可以在plugin标签内加入对应的版本号:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.7.14</version>
</plugin>
</plugins>
</build>
🍁 创建Controller类
创建项目之后,我们可以创建一个Controller类来测试SpringBoot项目环境,例如下面在项目的controller包中新建了一个SnackController,代码如下:
package com.moxuan.my_boot_test.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/books")
public class SnackController {
@GetMapping("/{id}")
public String getById(@PathVariable Integer id){
System.out.println("id ==> "+id);
return "欢迎来到我的世界!一起来Happy吧!!";
}
}
🍁 启动项目
运行 SpringBoot 工程不需要使用本地的 Tomcat 和 插件,只运行项目 com.moxuan.my_boot_test 包下的 Application 类,我们就可以在控制台看出如下信息:

然后启动浏览器,或者postman进行测试:
输入地址:http://localhost:8080/snacks/1

通过上面的入门案例我们可以看到使用 SpringBoot 进行开发,使整个开发变得很简单,那它是如何做到的呢?
要研究这个问题,我们需要看看 Application 类和 pom.xml 都书写了什么。先看看 Applicaion 类,该类内容如下:
package com.moxuan.my_boot_test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MyBootTestApplication {
public static void main(String[] args) {
SpringApplication.run(MyBootTestApplication.class, args);
}
}
这个类中的东西很简单,就在类上添加了一个 @SpringBootApplication 注解,而在主方法中就一行代码。我们在启动服务器时就是执行的该类中的主方法。
再看看 pom.xml 配置文件中的内容:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--指定了一个父工程,父工程中的东西在该工程中可以继承过来使用-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.moxuan</groupId>
<artifactId>my_boot_test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>my_boot_test</name>
<description>Demo project for Spring Boot</description>
<!-- JDK 版本-->
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<!--该依赖就是我们在创建 SpringBoot 工程勾选的那个 Spring Web 产生的-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--这个是单元测试的依赖,我们现在没有进行单元测试,所以这个依赖现在可以没有-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<!--这个插件是在打包时需要的,而这里暂时还没有用到-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
我们代码之所以能简化,就是因为指定的父工程和 Spring Web 依赖实现的。具体的我们后面在聊。
🍁 项目打包
SpringBoot项目无须在目标服务器安装 Tomcat 环境等等,可以将项目打包成jar包,该 jar 包可直接运行。
<plugins>
<!--这个插件是在打包时需要的-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
所以我们只需要双击 Maven 的 package 指令打包就会在 target 目录下生成对应的 Jar 包。

进入 jar 包所在位置,在 命令提示符 中输入如下命令
java -jar my_boot_test-0.0.1-SNAPSHOT.jar
如下图所示,jar包的路径为:

运行代码截图如下:

测试结果:

----------------------------------------------------------------------
分享不易,耗时耗力,喜欢的同学给个关注和赞吧
承接毕设指导,技术答疑,学习路上想要找私人教练的同学可以私信我
更多学习资料,公众号:墨轩学习网,B站:墨轩大楼
1190

被折叠的 条评论
为什么被折叠?



