网红框架SpringBoot2.x之框架简介及环境搭建

embedded/2025/2/28 7:19:10/

SpringBoot基于Spring框架进行“变态级“封装和扩展,由于上手简单、配置简单、集成简单,使得SpringBoot一跃成为近几年Java开发界的网红,加之众多的开源同僚的鼎力支持,为SpringBoot框架构建起了强大的开发生态圈。SpringBoot 1.x已经火便大江南北,应用到了众多的软件项目中,以及作为微服务的基础部分。无论是老一辈的古董级程序员还是新晋开发小生,都是时候拿起这把宝剑,在浩瀚的互联网代码世界中厮杀了。


file

虽然现在很多公司还是采用SpringBoot1.x,但技术车轮滚滚向前,SpringBoot2.x已经粉墨登场,那我们的SpringBoot之旅就从SpringBoot2.x开始。

版本选择

从SpringBoot官网 https://spring.io/projects/spring-boot/ 看到,现在的最新稳定版本是2.2.5

file

另外,你会看到,其实他还有更新的版本,不过还处于开发或测试阶段,并非稳定版。


file

作为企业项目开发和个人技术学习,除非个人兴趣尝鲜或者邀请公测踩坑,才会去选择非稳定的版本,除此之外一般都选择最新的稳定版本,这里也就是2.2.5版本。

(另外需要说明的是,作为企业开发,要考虑跟已有项目的兼容,若你公司大部分项目是采用SpringBoot1.x那么,保险起见,你也应该首选SpringBoot1.x。)

环境版本说明

1、SpringBoot2.2.5要求JDK版本最低要在8或以上版本,而官方早已经一路支持到了JDK13,此外,SpringBoot2.2.5的Spring内核版本是5.2.4

2、支持的构建工具有:Maven和Gradle,分别支持的版本是Maven3.3+和Gradle 5.x和Gradle6.x。

3、SpringBoot2.2.5内置的Servlet容器和Servlet版本的情况如下:


file

开发工具说明

不推荐你用记事本编写代码,虽然这是一项很重要的技能,为了开发效率,我们还是首选IDE工具,IDEA和MyEClipse 随便你选,个人比较推荐IDEA(IDEA的插件、工具都很丰富,而且代码提示不卡顿,环境配置很多都自动帮你完成,很方便)。
构建工具推荐使用Maven,当然你用Gradle也是可以的。

Maven关键配置

所需的POM文件完整内容如下:

<?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>
<groupId>com.yimadx</groupId>
<artifactId>springboot-test</artifactId>
<version>1.0</version><!-- 集成Springboot的核心依赖-->
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.5.RELEASE</version>
</parent>
<!-- 添加需要的依赖包 -->
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
</dependencies><!-- 编译打包成可执行jar包 -->
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins>
</build></project>

其中,parent、dependencies、build等部分为关键配置,其他为笔者自己的工程命名(根据自己实际命名进行更改,一般如果是用IDEA这样的工具,这些配置工程名的相关配置都是自动生成的)。

环境搭建

1、创建工程 打开IDEA,新建项目,填写GroupId和ArtifactId以及Version,Next


file

2、命名项目名称和代码文件目录 如项目名称命名为springboot-test


file

3、完成后,创建的工程中,打开新建项目的POM.xml文件,将写入上述Maven关键配置说明中POM文件内容的关键配置。

4、新建java包,作为类的根级包,这里将根包命名为com.yimadx ,以后的类文件均放置在该包下,这步一定要做,注意千万不要使用默认的包,不然后续会有很多问题。


file

5、在根包com.yimadx下新建Application类,并编写main方法,加入SpringBoot注解,这将作为整个程序的入口。

@SpringBootApplication
public class Application {public static void main(String[] args){SpringApplication.run(Application.class, args);}
}

关于@SpringBootApplication注解以及SpringBoot的其他核心注解的区别和联系会到后续章节中专门介绍。

6、配置运行环境,测试是否正常运行


file

出现如下日志且无报错,则表示运行成功


file

当然,你也可以将项目打成jar包后,使用java -jar 命令,手工启动程序。运行程序时,还可以添加启动参数,这个后续会专门介绍。

7、编写控制器类,测试框架能正常工作。在根包com.yimadx下新建controller包,用于放置我们的控制器类。(出于开发规范,即时是自己学习,也养成习惯,规划不同的包放不同作用的类)。
在com.yimadx.controller包下新建HelloController类,并添加@Controller注解,编写第一请求处理逻···

@Controller
public class HelloController {@RequestMapping("/hello")public String hello() {return "Success!";}
}

8、重新运行项目,打开浏览器,输入 http://localhost:8080/hello ,出现success则表示运行成功。

至此,最简单的springboot运行环境搭建完毕。
本文由弈码当先 root1024 独家发布!



喜欢的朋友记得点赞、收藏、关注哦!!!


http://www.ppmy.cn/embedded/167747.html

相关文章

GPU和FPGA的区别

GPU&#xff08;Graphics Processing Unit&#xff0c;图形处理器&#xff09;和 FPGA&#xff08;Field-Programmable Gate Array&#xff0c;现场可编程门阵列&#xff09;不是同一种硬件。 我的理解是&#xff0c;虽然都可以用于并行计算&#xff0c;但是GPU是纯计算的硬件…

前端开发--node.js

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境&#xff0c;它使得 JavaScript 能够在服务器端运行&#xff0c;极大地扩展了 JavaScript 的应用范围。以下是关于 Node.js 的详细介绍&#xff1a; 特点 事件驱动&#xff1a;Node.js 基于事件驱动架构&#xff0…

2.8 通过微调提升模型的准确度与效率-大模型ACP模拟题-真题

单选题 模型量化技术的主要优势是&#xff1f; A. 显著提升模型精度 B. 减少显存占用和响应时间 ✅ C. 完全保留原始模型能力 D. 支持多模态任务扩展 解析&#xff1a;量化通过降低参数精度减少资源消耗&#xff0c;但对精度影响较小&#xff08;<2%&#xff09; 以下关于…

P8615 [蓝桥杯 2014 国 C] 拼接平方数

题目描述 小明发现 49 很有趣&#xff0c;首先&#xff0c;它是个平方数。它可以拆分为 4 和 9&#xff0c;拆分出来的部分也是平方数。169 也有这个性质&#xff0c;我们权且称它们为&#xff1a;拼接平方数。 100 可拆分 1,00&#xff0c;这有点勉强&#xff0c;我们规定&a…

【2025.2.25更新】wordpress免费AI插件,文章内容、图片自动生成、视频自动生成、网站AI客服、批量采集文章,内置deepseek联网满血版

wordpress免费AI插件&#xff0c;文章内容、文章图片、长尾关键词、视频自动生成、网站AI客服、批量采集文章&#xff0c;插件已接入腾讯云大模型知识引擎xDeepSeek&#xff0c;基于腾讯云大模型知识引擎xDeepSeek可联网满血版&#xff0c;插件可实现文章生成、长尾关键词生成、…

【滑动窗口算法】-- 最大连续1的个数

文章目录 1. 题目2. 题目解析3. 代码 1. 题目 在线oj 给定一个二进制数组 nums 和一个整数 k&#xff0c;假设最多可以翻转 k 个 0 &#xff0c;则返回执行操作后 数组中连续 1 的最大个数 。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,1,0,0,0,1,1,1,1,0], K 2 输出&…

leetcode 912. 排序数组

912. 排序数组 912. 排序数组 题目 给你一个整数数组 nums&#xff0c;请你将该数组升序排列。 你必须在 不使用任何内置函数 的情况下解决问题&#xff0c;时间复杂度为 O(nlog(n))&#xff0c;并且空间复杂度尽可能小。 示例 1&#xff1a; 输入&#xff1a;nums [5,2,3,1…

子进程的创建 ─── linux第10课

目录 进程 内核数据结构代码和数据 fork 创建子进程 ​编辑 创建多进程 理解子进程的创建(总结) 进程 内核数据结构代码和数据 一个进程只有一个唯一父进程,但可以拥有多个子进程,因此进程是树形结构. fork 创建子进程 父子进程代码共享,数据各自私有的原因 因为数据私…