5 种方式快速创建 SpringBoot 项目

5 种方式快速创建 SpringBoot 项目

SpringBoot 凭借 “约定优于配置” 的特性,成为 Java 后端开发的主流框架,而快速创建规范的 SpringBoot 项目是入门的第一步。本文整理了 5 种最常用的 SpringBoot 项目创建方式 —— 涵盖 IDEA 直连官网、官网下载导入、对接阿里云镜像、Maven 改造、Spring Tool Suite 创建,适配不同开发场景和工具偏好,新手也能快速上手。

一、方式 1:IDEA 直连 Spring 官网(最常用)

IntelliJ IDEA 内置了 Spring Initializr 插件,可直接对接 Spring 官方服务器,一键生成标准化 SpringBoot 项目,适合大多数开发者的日常开发场景。

操作步骤

  1. 打开 IDEA,点击「File → New → Project」,在新建项目界面选择「Spring Initializr」:
    • Server URL:默认使用 Spring 官网地址 https://start.spring.io(无需修改);
    • JDK 版本:选择本地已安装的 JDK(建议 JDK8 及以上,如 JDK11、JDK17)。
  2. 配置项目元数据(Maven 坐标):
    • Group:组织标识(如com.example);
    • Artifact:项目名称(如springboot-demo);
    • Type:选择Maven Project(Maven 项目,新手首选);
    • Java Version:与本地 JDK 版本一致;
    • Packaging:选择Jar(SpringBoot 默认打包方式,无需 WAR 包)。
  3. 选择 SpringBoot 版本与依赖:
    • Spring Boot Version:选择稳定版(如 2.7.x、3.1.x,避免最新快照版);
    • Dependencies:搜索并勾选「Web → Spring Web」(基础 WEB 模块,支持 HTTP 接口开发),如需其他功能可按需勾选(如 MyBatis、MySQL Driver 等)。
  4. 确认项目存储路径,点击「Finish」,IDEA 会自动下载依赖并生成完整的 SpringBoot 项目结构。

优势

  • 一键生成,无需手动配置;
  • 依赖自动管理,避免版本冲突;
  • 生成的项目包含完整的启动类、配置文件、测试类,开箱即用。

二、方式 2:Spring 官网下载后导入 IDEA

若 IDEA 无法直接访问 Spring 官网(网络问题),可先在浏览器访问 Spring Initializr 生成项目包,再导入 IDEA,适配网络受限场景。

操作步骤

  1. 访问 Spring Initializr 官网:https://start.spring.io
  2. 配置项目信息(与方式 1 一致):
    • 选择项目类型(Maven/Gradle)、JDK 版本、SpringBoot 版本;
    • 填写 Group、Artifact,勾选所需依赖(如 Spring Web)。
  3. 点击「GENERATE」按钮,下载项目压缩包(zip 格式);
  4. 解压压缩包到本地指定目录;
  5. 打开 IDEA,点击「File → Open」,选择解压后的项目文件夹,IDEA 会自动识别为 Maven 项目并加载依赖。

注意事项

  • 解压后确保项目根目录包含pom.xml(Maven 项目)或build.gradle(Gradle 项目);
  • 若 IDEA 未自动加载依赖,可右键pom.xml → 「Maven → Reload Project」手动刷新。

三、方式 3:IDEA 对接阿里云镜像(国内加速)

Spring 官方服务器位于国外,国内访问可能较慢或超时,阿里云提供了 Spring Initializr 的镜像服务,速度更快,是国内开发者的优选。

操作步骤

  1. 打开 IDEA,新建项目选择「Spring Initializr」;
  2. 修改 Server URL 为阿里云镜像地址:https://start.aliyun.com
  3. 后续步骤与方式 1 完全一致:
    • 配置 Group、Artifact、JDK 版本;
    • 勾选 Spring Web 等依赖;
    • 确认路径并生成项目。

核心优势

  • 阿里云镜像国内节点,依赖下载速度提升 50% 以上;
  • 镜像同步 Spring 官方的依赖版本,兼容性无差异;
  • 额外提供阿里云专属依赖(如阿里云 OSS、短信服务等),便于集成阿里云生态。

四、方式 4:Maven 空项目改造为 SpringBoot

若已有 Maven 空项目,或需要手动定制 SpringBoot 配置,可通过添加核心依赖和手写启动类,将普通 Maven 项目改造为 SpringBoot 项目,适合需要深度定制的场景。

操作步骤

  1. 打开 IDEA,创建空 Maven 项目:「File → New → Project → Maven」,填写 Group、Artifact,完成创建;
  2. 验证项目:启动类右键「Run」,控制台输出 SpringBoot 标识即表示改造成功。

手写 SpringBoot 启动类(核心):在src/main/java下创建启动类(包名建议与 Group 一致,如com.example.SpringBootDemoApplication):java运行

package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /** * SpringBoot启动类(核心注解:@SpringBootApplication) */ @SpringBootApplication public class SpringBootDemoApplication { public static void main(String[] args) { // 启动SpringBoot应用 SpringApplication.run(SpringBootDemoApplication.class, args); } } 

修改pom.xml,添加 SpringBoot 核心依赖:xml

<!-- 1. 添加SpringBoot父依赖(统一管理版本) --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.15</version> <!-- 稳定版,按需修改 --> <relativePath/> </parent> <dependencies> <!-- 2. 添加Spring Web依赖(核心WEB模块) --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- 3. 可选:添加测试依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <!-- 4. 可选:添加打包插件(生成可执行Jar包) --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> 

关键说明

  • @SpringBootApplication:核心注解,整合了@Configuration@EnableAutoConfiguration@ComponentScan,无需手动配置扫描包;
  • 启动类需放在所有业务类的上层目录(默认扫描启动类所在包及子包)。

五、方式 5:使用 Spring Tool Suite(STS)创建

Spring Tool Suite(STS)是 Spring 官方推出的开发工具(基于 Eclipse),内置了 SpringBoot 专属创建工具,适合习惯 Eclipse 生态的开发者。

操作步骤

  1. 下载并安装 STS:访问 Spring 官网(https://spring.io/tools),选择对应系统版本的 STS;
  2. 打开 STS,点击「File → New → Spring Starter Project」;
  3. 配置项目信息:
    • Name:项目名称;
    • Group/Artifact:Maven 坐标;
    • Type:Maven/Gradle;
    • Spring Boot Version:选择稳定版。
  4. 选择依赖:勾选「Web → Spring Web」,点击「Finish」;
  5. STS 会自动生成完整的 SpringBoot 项目,包含启动类、application.properties配置文件等。

优势

  • STS 专为 Spring 生态定制,内置 SpringBoot、Spring Cloud 等插件;
  • 提供可视化的配置编辑器、启动器管理工具,便于调试。

六、核心注意事项与选型建议

1. 通用注意事项

  • JDK 版本匹配:SpringBoot 2.x 兼容 JDK8+,SpringBoot 3.x 要求 JDK17+,需确保 JDK 版本与 SpringBoot 版本匹配;
  • 依赖精简:仅勾选项目必需的依赖(如基础 WEB 项目仅需 Spring Web),避免冗余依赖增加项目体积;
  • 镜像加速:国内开发者优先使用阿里云镜像(https://start.aliyun.com),解决依赖下载慢的问题。

2. 选型建议

创建方式适用场景推荐指数
IDEA 直连 Spring 官网网络通畅、国外访问无压力的开发者★★★★★
官网下载导入 IDEAIDEA 无法访问外网、网络受限场景★★★☆☆
IDEA 对接阿里云国内开发者、追求依赖下载速度★★★★★
Maven 空项目改造深度定制项目、已有 Maven 项目迁移★★★☆☆
Spring Tool Suite 创建习惯 Eclipse 生态、Spring 官方工具偏好者★★★☆☆

总结

  1. 新手首选:IDEA 对接阿里云镜像(速度快、操作简单),一键生成标准化项目;
  2. 定制需求:Maven 空项目改造(手动控制依赖和配置,灵活度高);
  3. 工具偏好:习惯 Eclipse 用 STS,习惯 IDEA 用内置 Spring Initializr;
  4. 核心共性:无论哪种方式,SpringBoot 项目的核心是「启动类 +@SpringBootApplication 注解 + 核心依赖」,掌握这三点即可快速搭建项目。

掌握以上 5 种创建方式,可适配不同开发场景,为后续 SpringBoot 核心功能开发(如接口开发、数据库操作、配置管理)打下基础。

Read more

程序员崩溃瞬间:这4道链表题不会,面试直接凉凉?速补!!

程序员崩溃瞬间:这4道链表题不会,面试直接凉凉?速补!!

坚持用清晰易懂的图解+多语言代码,让每道题变得简单! 🌟 🚀呆头个人主页详情 🌱呆头个人Gitee代码仓库 📌 呆头详细专栏系列 座右铭:“不患无位,患所以立。” 👨‍💻 程序员崩溃瞬间:这4道链表题不会,面试直接凉凉?速补!! * 前言 * 目录 * 1.移除链表元素 * 方法思路 * 代码实现 * 代码解释 * 2.反转链表 * 方法思路 * 代码实现 * 代码解释 * 3.查找链表中间结点 * 方法思路 * 代码实现 * 代码解释 * 4.合并两个有序链表 * 方法思路 * 代码实现 * 代码解释 * 为什么不需要循环就能连接所有剩余节点? 前言 🚀 你好,欢迎来到《编程闯关记》! 这里是算法与数据结构的实战基地,也是你从“暴力解法”到“最优解”的进化场。 🔍 专栏初衷: * 用清晰的图解 + 多语言代码(Python/

By Ne0inhk
详解数据结构之跳表

详解数据结构之跳表

目录 跳表的定义 跳表的演化过程 跳表的优化思路 跳表如何保证效率 跳表的时间复杂度 跳表的空间复杂度 跳表的查找 跳表的插入 跳表的删除 跳表的模拟实现 跳表与平衡搜索树及哈希表的对比 跳表的定义 跳表是由William Pugh(音译为威廉·普)发明的,最早出现于他在1990年发表的论文《Skip Lists: A Probabilistic Alternative to Balanced Trees》,跳表全称为跳跃列表,它允许快速查询,插入和删除一个有序连续元素的数据链表。 跳表的演化过程 对于单链表来说,即使数据是已经排好序的,想要查询其中的一个数据,只能从头开始遍历链表,这样效率很低,时间复杂度很高,是 O(n),如下图所示。 那我们有没有什么办法来提高查询的效率呢?我们可以为链表建立一个“索引”,这样查找起来就会更快,如下图所示,我们在原始链表的基础上,每两个结点提取一个结点建立索引,我们把抽取出来的结点叫作索引层或者索引,down

By Ne0inhk
【算法】【动态规划】斐波那契数模型

【算法】【动态规划】斐波那契数模型

目录 * 一、动态规划解题模版 * 二、第N个泰波那契数 * 三、⾯试题 08.01. 三步问题 * 四、746. 使⽤最⼩花费爬楼梯(easy) * 五、91.解码⽅法 一、动态规划解题模版 1. 状态表示:我们一般创建一个一维数组dp,把dp表填满,其中的某一个值就是结果。而状态表示就是指这个dp表中元素的含义; 1.1. 来源:题目要求,经验+题目要求 ,分析问题的过程中的重复子问题 2. 状态转移方程:dp[ i ] = ? 3. 初始化:保证根据状态转移方程填表时不越界 4. 填表顺序:为了填写当前状态的时候,所需要的状态已经计算过了 5. 返回值:题目要求 + 状态表示

By Ne0inhk
Transformer实战(9)——Transformer分词算法详解

Transformer实战(9)——Transformer分词算法详解

Transformer实战(9)——Transformer分词算法详解 * 0. 前言 * 1. 子词分词算法 * 2. 加载预训练分词器 * 3. 常见字词分词算法 * 3.1 字节对编码 * 3.2 WordPiece * 3.3 SentencePiece * 4. 使用 tokenizers 库训练分词器 * 4.1 训练 BPE * 4.2 训练 WordPiece * 4.3 空分词管道 * 小结 * 系列链接 0. 前言 在自然语言处理领域,高效准确的分词算法是构建强大语言模型的基础。随着 Transformer 架构的广泛应用,子词分词算法已成为处理多语言文本和稀有词汇的关键技术。本文将从理论到实践,全面解析现代自然语言处理 (Natural Language Processing,

By Ne0inhk