Spring Boot 3系列之一(初始化项目)

近期,JDK 21正式发布,而Spring Boot 3也推出已有一段时间。作为这两大技术领域的新一代标杆,它们带来了许多令人振奋的新功能和改进。尽管已有不少博客和文章对此进行了介绍,但对于我们这些身处一线的开发人员来说,有些文章和文档可能一看就会,一写就废。因此,为了更深入地理解JDK 21和Spring Boot 3的新特性,以及加深对Java和Spring Boot生态的理解,我们决定通过编写并分享代码,来展示一个简单的项目。我们计划在之后逐步完善这个项目。本文将向您展示如何使用最新版本的Spring Boot和JDK来初始化一个简单的Spring Boot 3程序。

springboot3.jpg

初始化项目

我们可以通过以下步骤在 https://start.spring.io/ 上初始化您的项目:

  1. 打开 https://start.spring.io/ 网站。

  2. 在 “Project” 中选择 “Maven Project” 。

  3. 在 “Language” 中选择 “Java”。

  4. 在 “Spring Boot” 中选择 “3.1.5” 版本。

  5. 在 “Project Metadata” 中填写您的项目信息,例如 “Group”(项目组织)、“Artifact”(项目名)、 “Name”(项目描述)、Packaging类型及jdk版本等。

  6. 在 “Dependencies” 中添加您需要的依赖,例如 “Spring Web” 等。我们此处只选"Spring Web"。其它的我们后续手动添加。

  7. 点击 “Generate” 按钮,下载生成的项目压缩包。

_20231030210300.jpg

启动项目

我们将下载好的压缩文件解压,然后使用idea打开

  1. 设置jdk

首先我们需要到oracle官网去下载jdk21,然后安装成功

在idea中点击 File -> Project Structure -> Project Settings ->Project 设置jdk

_20231030212052.jpg

  1. 设置maven

在idea中点击 File ->Settings -> Build, Execution, Deployment ->Build Tools -> Maven 设置maven

_20231030212327.jpg

  1. 启动项目

我们可以看到,我们的这是个最简单的springboot的项目,只有一个入口类的main方法,点击main方法旁边的debug启动项目
_20231030212431.jpg

如果不出意味的话我们可以看到如下启动日志

_20231030212709.jpg

如此,我们的项目便启动成功了

结语

Spring Boot是一个强大而灵活的框架,为开发者提供了快速构建应用程序的便利。通过其简化的配置和开箱即用的特性,您可以更专注于应用程序的逻辑开发,而不用过多关注繁琐的配置细节。借助Spring Boot,您可以更加高效地构建各种类型的Java应用程序,助力您的软件开发之旅!

希望这篇博客文章能够帮助您更好地了解Spring Boot初始化的过程和重要性!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/124248.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JavaEE】HTTP协议

HTTP协议 HTTP是什么?HTTP 协议格式HTTP 请求格式HTTP响应格式协议格式总结 HTTP 请求 (Request)认识 URLURL 基本格式 关于 URL encode认识 "方法" (method)1. GET 方法2. POST 方法 认识请求 "报头" (header) HTTP 响应详解认识 "状态码" (st…

【嵌入式开发 Linux 常用命令系列 9 -- linux系统终端命令提示符设置(PS1)】

文章目录 Linux PS1 介绍PS1 纯文本和特殊的转义序列PS1 颜色设置 Linux PS1 介绍 在Linux中,PS1(Prompt String 1)是一个环境变量,用来定义shell命令提示符的显示内容和格式。当你在终端中输入命令时,PS1定义的就是那…

Jupyter Notebook的使用

文章目录 Jupyter Notebook一、Jupyter Notebook是什么?二、使用步骤1.安装Miniconda2.安装启动**Jupyter Notebook**3.一些问题 三、Jupyter Notebook的操作1.更换解释器2.在指定的文件夹中打开 四.报错解决1.画图的时候出现报错2.画图的时候空白3.pandas相关的错误…

flink 反压原理

背景 在flink中由于数据倾斜或者数据处理速率的不匹配,很容易引起反压,本文就看一下flink反压的原理 flink反压原理 flink全流程pineline的反压实现其实依赖于TaskManager之间的反压和TaskManager内部的反压来实现 1.TaskManager之间的反压 2.Task…

前端学习之webpack

概述 webpack是一个流行的前端项目构建工具(打包工具),可以解决当前web开发中所面临的问题。 webpack提供了友好的模块化支持,以及代码压缩混淆、处理js兼容问题、性能优化等强大的功能,从而让程序员把工作重心放到具…

RT-Thread内核——内核基础(上)

1、内核简介 内核是操作系统的核心,是操作系统最基础也是最重要的部分,主要负责系统的线程、线程间通信、系统时钟、中断以及内存等。其架构图如下: 2、线程调度 线程是RT-Thread操作系统中最小的调度单位,线程调度算法的基于…

CentOS 7 安装和配置java环境

1 安装包准备 安装包可以通过下面地址进行版本选择安装: https://www.oracle.com/java/technologies/downloads/#java8 2 正式开始安装 本次分享的安装方法直接通过编辑/etc/profile文件实现java的安装 2.1 新建安装包存放目录 mkdir /java cd /java/ 2.2 解压安…

【C/C++】函数重载注意事项

函数重载概述 函数重载满足条件: 同一个作用域下函数名称相同函数参数类型不同 或者 个数不同 或者 顺序不同 注意: 函数的返回值不可以作为函数重载的条件。 函数重载注意事项 引用作为重载条件函数重载碰到函数默认参数 //函数重载注意事项 //1、引用作为重载…

RDBMS 的历史回顾

“数据库”这个词是怎么来的?当 SQL 是 SEQUEL 时它代表什么?通过这篇有关 RDBMS 历史的文章了解所有这些内容以及更多内容。 埃里克迪特里希用户头像 经过 埃里克迪特里希 核心 Anush Gasparyan 用户头像 经过 阿努什加斯帕里安 2017年7月21日 意见…

Redis(10)| I/O多路复用(mutiplexing)

上文select/epoll 在上文《Redis(09)| Reactor模式》 思考问题可以使用I/O多路复用技术解决多多客户端TCP连接问题,同时也提到为了解决最早期的UNIX系统select调用存在的四个问题。 select(int nfds, fd_set *r, fd_set *w, fd_set *e, stru…

机器学习第一周

一、概述 机器学习大致会被划分为两类:监督学习,无监督学习 1.1 监督学习 监督学习其实就是,给计算机一些输入x和正确的输出y(训练数据集),让他总结x->y的映射关系,从而给他其他的输入x&a…

Docker安全

目录 一. cgroup 2. cpu优先级 3. 内存资源限制 4. 磁盘io限制 二. lxcfs隔离 三. 容器特权 一. cgroup 1. cpu资源限制 docker run -it --rm --cpu-period 100000 --cpu-quota 20000 ubuntu root433a1612a171:/# dd if/dev/zero of/dev/null & 2. cpu优先级 docker run -i…

2.11、自定义图融合过程与量化管线

introduction 介绍如何自定义量化优化过程,以及如何手动调用优化过程 code from typing import Callable, Iterableimport torch import torchvisionfrom ppq import (BaseGraph, QuantizationOptimizationPass,QuantizationOptimizationPipeline, QuantizationS…

探营云栖大会:蚂蚁集团展出数字人全栈技术,三大AI“机器人”引关注

一年一度的科技盛会云栖大会将于10月31日正式开幕。30日,记者来到云栖大会展区探营,提前打卡今年上新的“黑科技”。 记者在蚂蚁集团展馆看到,超1亿人参与的亚运“数字火炬手”全栈技术首次公开展示,还可体验基于数字人技术的“数…

什么是全排列?(算法实现)

全排列是什么? 全排列是指将一组元素按照一定顺序进行排列的所有可能结果。以一组数字为例,比如[1, 2, 3]的全排列结果为:[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]。 全排列有许多不同的计算方法,其中…

云服务器搭建Zookeeper集群

文章目录 1.集群配置2.zookeeper的群起脚本3. Zookeeper节点的创建和删除相关4. Zookeeper的选举机制 1.集群配置 Zookeeper的集群个数最好保证是奇数个数,因为Zookeeper的选举过程有一个“半数机制”。 5台服务器,可以设置Zookeeper的集群为3或者5&…

大数据学习(18)-任务并行度优化

&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦&#x1f91…

uniapp实现公众号微信登录

前端代码 data() {return {openid: "",server: ,code:}; }, mounted() {this.getCode() }, methods:{getCode() {// 非静默授权,第一次有弹框this.code ;var callback_url 回调地址; // 获取页面urlvar appid APPID;this.code this.getUrlCode().cod…

通信原理板块——卷积码(原理、代数和几何表示、编码和解码)

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 1、卷积码定义 卷积码(convolution…

uboot - 驱动开发 - 驱动模型

说明 类似于linux,为了规范、统一驱动适配和驱动接口调用,uboot定义了一套驱动模型(Driver Model),简称DM。本文基于:u-boot-2021.10。 优点 为同一类ip的驱动定义了统一的操作接口,DM在软件层面做了一定的抽象。分…