IDEA创建SpringBoot项目教程,讲解超详细!!!(2024)

前言

在创建Spring Boot项目时,为了确保项目的顺利构建和运行,我们依赖于JDK(Java开发工具包)和Maven仓库。

JDK作为Java编程的基础,提供了编译和运行Java应用程序所需的核心类库和工具。

JDK安装配置教程:

ps:不同的JDK版本,除下载安装包不同外,其余均可参考该教程

JDK8卸载、下载、安装、配置-Windows篇

Maven仓库则是Java项目的依赖管理工具,它帮助我们自动下载和管理项目所需的第三方库和框架。

Maven仓库安装配置教程:

Maven下载、安装、配置教程(超详细+配置idea)

本文章基于Spring Boot 2.x 版本创建项目,通常建议使用的 JDK(Java Development Kit)版本是 JDK 8、JDK 11 或更高版本,具体取决于 Spring Boot 的子版本。以下是 Spring Boot版本与推荐的 JDK 版本的对应关系:

Spring Boot 2.0.x:推荐使用 JDK 8。
Spring Boot 2.1.x:推荐使用 JDK 8 或 JDK 11。
Spring Boot 2.2.x:推荐使用 JDK 8 或 JDK 11。
Spring Boot 2.3.x:推荐使用 JDK 8、JDK 11 或 JDK 14。
Spring Boot 2.4.x:推荐使用 JDK 8、JDK 11 或 JDK 15。
Spring Boot 2.5.x:推荐使用 JDK 8、JDK 11 或 JDK 16。
Spring Boot 3.x 使用 JDK17。

构建项目

1、在IDEA中创建springboot项目如图,依次点击左上角的菜单栏中的File >> New >> Project。

2、打开的窗口左侧选择Spring Initilizer,然后按照提示输入项目名称、存储路径、选择相应的JDK版本、开发语言以及打包方式,完善好上述项目信息,然后点击Next按钮。

  • Server URL:用于初始化Spring Boot项目的服务器的地址,它负责根据用户的选择生成项目结构,此处建议跟作者保持一致使用国内镜像源https://start.aliyun.com/。

在创建Spring Boot项目时,Spring Initializr工具需要从一个服务器获取项目模板和依赖信息。这个服务器的地址就是Server URL。Spring Initializr默认使用官方的Server URL(如https://start.spring.io/),但也可以配置为使用其他服务器,例如国内的镜像源(如阿里云镜像仓库https://start.aliyun.com/),以提高下载速度和稳定性。

  • Name:Springboot项目名,自定义即可
  • Location:项目存放位置,自定义即可
  • Language:开发语言,选择Java
  • Type:构建项目的方式,选择Maven
  • Group:项目的groupId,自定义即可

groupId是项目组织唯一的标识符,它实际对应Java的包结构,即Java的目录结构。

groupId通常遵循反向域名的命名规则,比如com.example,其中com是域,而example是组织或项目的名称。这种命名方式有助于确保groupId在全球范围内是唯一的。

  • Artifact:应用程序的名称或者是项目的模块名,自定义即可

Artifact是Maven管理项目包时用作区分的字段之一,类似于地图上的坐标点,用于唯一标识一个项目或模块。在创建Spring Boot项目时,Artifact ID是必填项,并且需要确保它在全局范围内是唯一的,特别是当项目需要上线时。

Artifact ID与项目的功能或用途相关,例如,一个用于用户管理的模块可能命名为user-management。

  • Package name:软件包名,自定义即可

Package name(包名)指的是Java项目的包结构,它用于组织项目的类和接口。包名是Java命名空间的一部分,通过包名,我们可以避免类名冲突,并且可以清晰地表示类之间的隶属关系或层次关系。

包名由多个部分组成,每部分之间用点号.分隔。例如,一个典型的包名可能是com.example.myproject,其中com是顶级域名,example是组织或公司的名称,而myproject是项目的名称或标识。

  • JDK:Java开发工具包,根据个人电脑安装JDK版本选择,作者使用JDK1.8

它是Java开发人员用来开发Java应用程序的核心工具集。JDK包含了Java运行时环境(JRE)、Java编译器(javac)、Java文档生成器(javadoc)等工具,同时还包含了许多Java开发所需的库和工具。这些工具可以帮助开发人员编写、编译、调试和运行Java程序。

  • Java:项目将使用的编程语言版本,作者使用8版本
  • Packaging:项目打包方式,作者使用Jar

选择打包方式时,你应该考虑你的项目需求以及你打算如何部署和运行你的应用程序。对于大多数独立的 Spring Boot 应用程序来说,JAR 是一个方便且推荐的选择,因为它简化了部署过程,并允许应用程序在任何支持 Java 的环境中运行。

3、选择springBoot的版本,在依赖管理部分,选择“Web”下面的“Spring Web”以及其他所需的依赖,然后点击Create按钮。

4、创建完成,等待依赖下载完成后,IDEA会自动创建SpringBoot项目,并配置好基本的目录结构和文件,点击src >>main >>java >>包名,里面找到自动生成的主类然后右键点击运行,查看控制台输出的日志,无报错信息即可。

至此我们的SpringBoot项目就创建成功!!!

ps:后续作者会持续更新Springboot集成各类技术框架,如感兴趣关注点一下!!!

有什么问题都可以评论区留言,看见都会回复的!!!

如果你觉得本篇文章对你有所帮助的,多多支持!!!

点赞收藏评论,抱拳了!!!

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

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

相关文章

大数据工程师如何做到数据可视化?

好的数据可视化作品都是通过不断的数据对比分析实战出来的。 今天给大家带来一篇大数据工程师干货,从多角度解析做数据可视化的重要性,并解读一些适用的应用场景。大数据工程师们刷到这篇文章时一定要进来看看,满满的干货。 目录 1. 什么是数…

【Java】图书管理系统-控制台输出

项目原码压缩包在我主页的资源中免费领取。(在IDEA中运行,启动类在src -> Main 中运行) 图书管理系统 设计一个简单的控制台输出的图书管理系统,我们首先需要明确其基本功能、设计内容以及设计要求。这个系统可以包括以下几个…

STM32-CAN

一、CAN总线简介 1.1 CAN简介 CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO 国际标准化的串行通信 协议。异步半双工。 ISO11898:123kbps~1Mbps。 ISO11519:125kbps 特点: 多主控制没…

自动驾驶仿真:Carsim转向传动比设置

文章目录 一、转向传动比概念二、如何设置转向传动比1、C factor概念2、Steer Kinematics概念3、传动比计算公式 三、转向传动比验证 一、转向传动比概念 转向传动比(Steering Ratio)表示方向盘转动角度与车轮转动角度之间的关系。公式如下:…

数字化校园:打造未来教育新风尚

在21世纪的教育蓝图中,"数字化校园"正逐渐从愿景走向现实,它不仅是科技进步与教育创新深度融合的产物,更是重塑教育生态、引领未来学习风尚的关键力量。随着云计算、大数据、人工智能等前沿技术的蓬勃发展,传统的教育模…

【SpringBoot】SpringBoot:简化数据库操作与API开发

文章目录 引言SpringBoot概述数据库操作简化传统数据库操作的挑战使用Spring Data JPA示例:定义Repository接口实现服务层 使用MyBatis示例:配置MyBatis定义Mapper接口 API开发简化RESTful API概述创建RESTful API示例:定义控制器 高级特性与…

【Better Lighting V2】Blender商城10周年免费送插件灯光预设和图案轮库场景打光和模拟光透过图案水滴波纹效果

Blender商城10周年免费送插件:https://blendermarket.com/birthday Better Lighting V2 灯光预设和图案轮库 模拟各种环境下光线透过物体效果 各种预设快速调整 非常简单和快速打光调色 更多详细介绍:https://blendermarket.com/products/bette…

element-ui input输入框和多行文字输入框字体不一样

页面中未作样式修改,但是在项目中使用element-ui input输入框和多行文字输入框字体不一样,如下图所示: 这是因为字体不一致引起的,如果想要为Element UI的输入框设置特定的字体,你可以在你的样式表中添加以下CSS代码…

WWDC 2024 回顾:Apple Intelligence 的发布与解析

一年一度的苹果全球开发者大会(WWDC)如期而至,2024 年的 WWDC 再次成为科技界的焦点。本次发布会中,苹果正式推出了他们在 AI 领域的全新战略——Apple Intelligence。这一全新概念旨在为用户打造“强大、易用、全面、个性化、注重…

EFDC建模方法及在地表水环境评价、水源地划分、排污口论证

原文链接:EFDC建模方法及在地表水环境评价、水源地划分、排污口论证 近年,随着水环境问题的凸显,地表水水环境状况不仅是公众关注的焦点,也是环保、水务等部门兼管的重点,已成为项目审批、规划制定,甚至领…

LVS工作模式详解,NAT全方位剖析

请求到达: 当用户请求到达Director Server(负载均衡服务器)时,数据包会先到达内核空间的PREROUTING链。此时,数据包的源IP为CIP(Client IP),目标IP为VIP(Virtual IP&…

MySQL学习笔记-进阶篇-SQL优化

SQL优化 插入数据 insert优化 1)批量插入 insert into tb_user values(1,Tom),(2,Cat),(3,Jerry); 2)手动提交事务 mysql 默认是自动提交事务,这样会导致频繁的开启和提交事务,影响性能 start transaction insert into tb_us…

实拆一个风扇

fr:徐海涛(hunkxu)

Qwen2——阿里巴巴最新的多语言模型挑战 Llama 3 等 SOTA

引言 经过几个月的期待, 阿里巴巴 Qwen 团队终于发布了 Qwen2 – 他们强大的语言模型系列的下一代发展。 Qwen2 代表了一次重大飞跃,拥有尖端的进步,有可能将其定位为 Meta 著名的最佳替代品 骆驼3 模型。在本次技术深入探讨中,我…

神经网络学习2

张量(Tensor)是深度学习和科学计算中的基本数据结构,用于表示多维数组。张量可以看作是一个更广义的概念,涵盖了标量、向量、矩阵以及更高维度的数据结构。具体来说,张量的维度可以是以下几种形式: 标量&am…

LogicFlow 学习笔记——2. LogicFlow 基础 实例

LogicFlow 实例 创建实例 每一个流程设计界面&#xff0c;就是一个 LogicFlow 的实例。 <template><div id"container"></div><!-- 用于显示 LogicFlow 图表的容器 --> </template> <script>// 创建 LogicFlow 实例const lf …

Day03 链表概念与单向不循环链表的实现

目录 1、顺序表的优缺点 2、链式存储的线性表 3、单向不循环链表实现 1、顺序表的优缺点 顺序表的优点是: 由于顺序表数据元素的内存地址都是连续的,所以可以实现随机访问,而且不需要多余的信息来描述相关的数据,所以存储密度高。 顺序表的缺点是: 顺序表的数据在进行…

常用的JDK调优监控工具整理

JVM 调优首先要做的就是监控 JVM 的运行状态&#xff0c;这就需要用到各种官方和第三方的工具包了 一、 JDK 工具包 JDK 自带的 JVM 工具可以分为命令行工具和可视化工具 命令行工具 jps: JVM Process status tool&#xff1a;JVM进程状态工具&#xff0c;查看进程基本信息j…

Spring Aop及事务管理

5 Spring AOP AOP概述 AOP&#xff1a;全称是 Aspect Oriented Programming 即&#xff1a;面向切面编程。简单的说它就是把我们程序重复的代码抽取出来&#xff0c;在需要执行的时候&#xff0c;使用动态代理的技术&#xff0c;在不修改源码的基础上&#xff0c;对我们的已有…

SpringMVC框架学习笔记(七):处理 json 和 HttpMessageConverter 以及文件的下载和上传

1 处理 JSON-ResponseBody 说明: 项目开发中&#xff0c;我们往往需要服务器返回的数据格式是按照 json 来返回的 下面通过一个案例来演示SpringMVC 是如何处理的 &#xff08;1&#xff09; 在web/WEB-INF/lib 目录下引入处理 json 需要的 jar 包&#xff0c;注意 spring5.x…