Spring Boot 开发环境搭建详解
下面安装spring boot的详细步骤,涵盖了从安装 JDK 和 Maven 到创建和运行一个 Spring Boot 项目的全过程。
文章目录
- 1. 安装 JDK
- 步骤 1.1:下载 JDK
- 步骤 1.2:安装 JDK
- 步骤 1.3:配置环境变量
- 2. 安装 Maven
- 步骤 2.1:下载 Maven
- 步骤 2.2:解压文件
- 步骤 2.3:配置环境变量
- 3. 配置 IDE
- 步骤 3.1:下载并安装 IDE
- 步骤 3.2:配置 IDE
- 4. 创建 Spring Boot 项目
- 步骤 4.1:访问 Spring Initializr
- 步骤 4.2:配置项目
- 步骤 4.3:生成项目
- 5. 运行 Spring Boot 应用
- 步骤 5.1:找到主类
- 步骤 5.2:运行应用
- 步骤 5.3:测试应用
- 6. 测试和调试
- 步骤 6.1:使用 IDE 的调试功能
- 步骤 6.2:利用日志输出
1. 安装 JDK
步骤 1.1:下载 JDK
-
访问 Oracle 官方网站:
- 打开浏览器,访问 Oracle 官方网站。
- 选择适合您操作系统的 JDK 版本进行下载。
-
访问 OpenJDK 官网:
- 打开浏览器,访问 OpenJDK 官网。
- 选择适合您操作系统的 OpenJDK 版本进行下载。
步骤 1.2:安装 JDK
-
Windows:
- 双击下载的安装包,按照安装向导进行安装。
- 选择安装路径,默认路径通常是
C:\Program Files\Java\jdk-<version>。
-
Linux:
-
打开终端,使用以下命令安装 OpenJDK:
sudo apt update sudo apt install openjdk-17-jdk
-
步骤 1.3:配置环境变量
-
Windows:
- 打开“控制面板” -> “系统和安全” -> “系统” -> “高级系统设置” -> “环境变量”。
- 在“系统变量”部分,点击“新建”,添加变量名
JAVA_HOME,变量值为 JDK 安装路径(例如C:\Program Files\Java\jdk-<version>)。 - 编辑系统变量
Path,点击“新建”,添加%JAVA_HOME%\bin。
-
Linux:
-
打开终端,编辑
~/.bashrc或~/.profile文件,添加以下内容:export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 export PATH=$JAVA_HOME/bin:$PATH -
使配置生效:
source ~/.bashrc
-
2. 安装 Maven
步骤 2.1:下载 Maven
- 访问 Apache Maven 官方网站:
- 打开浏览器,访问 Apache Maven 官方网站。
- 选择适合您操作系统的 Maven 版本进行下载。
步骤 2.2:解压文件
-
Windows:
- 将下载的压缩包解压到一个合适的目录,例如
C:\Program Files\Apache\maven。
- 将下载的压缩包解压到一个合适的目录,例如
-
Linux:
-
打开终端,使用以下命令解压:
tar -xvf apache-maven-<version>-bin.tar.gz -C /opt/
-
步骤 2.3:配置环境变量
-
Windows:
- 打开“控制面板” -> “系统和安全” -> “系统” -> “高级系统设置” -> “环境变量”。
- 在“系统变量”部分,点击“新建”,添加变量名
MAVEN_HOME,变量值为 Maven 安装路径(例如C:\Program Files\Apache\maven)。 - 编辑系统变量
Path,点击“新建”,添加%MAVEN_HOME%\bin。
-
Linux:
-
打开终端,编辑
~/.bashrc或~/.profile文件,添加以下内容:export MAVEN_HOME=/opt/apache-maven-<version> export PATH=$MAVEN_HOME/bin:$PATH -
使配置生效:
source ~/.bashrc
-
3. 配置 IDE
步骤 3.1:下载并安装 IDE
-
IntelliJ IDEA:
- 访问 IntelliJ IDEA 官方网站,下载并安装适合您操作系统的版本。
-
Eclipse:
- 访问 Eclipse 官方网站,下载并安装适合您操作系统的版本。
步骤 3.2:配置 IDE
-
IntelliJ IDEA:
- 打开 IntelliJ IDEA,点击“File” -> “Project Structure” -> “SDKs”,添加 JDK。
- 点击“File” -> “Settings” -> “Build, Execution, Deployment” -> “Build Tools” -> “Maven”,配置 Maven 安装路径。
-
Eclipse:
- 打开 Eclipse,点击“Window” -> “Preferences” -> “Java” -> “Installed JREs”,添加 JDK。
- 点击“Window” -> “Preferences” -> “Maven” -> “Installations”,配置 Maven 安装路径。
4. 创建 Spring Boot 项目
步骤 4.1:访问 Spring Initializr
- 打开浏览器,访问 https://start.spring.io/。
步骤 4.2:配置项目
- 选择您的项目类型(例如 Maven Project)、语言(Java)、Spring Boot 版本等。
- 添加所需的依赖,比如 “Web” 依赖来创建一个 Web 应用。
步骤 4.3:生成项目
- 点击 “Generate” 按钮下载项目压缩包。
- 解压后导入到您的 IDE 中。
- IntelliJ IDEA:
- 打开 IntelliJ IDEA,点击“File” -> “Open”,选择解压后的项目目录。
- Eclipse:
- 打开 Eclipse,点击“File” -> “Import” -> “Existing Maven Projects”,选择解压后的项目目录。
- IntelliJ IDEA:
5. 运行 Spring Boot 应用
步骤 5.1:找到主类
- 在 IDE 中,找到
src/main/java目录下的主类,该类包含@SpringBootApplication注解。
步骤 5.2:运行应用
- 右键点击主类,选择 “Run” 或 “Debug” 选项来启动应用。
- IntelliJ IDEA:
- 右键点击主类,选择 “Run ‘Application.main()’”。
- Eclipse:
- 右键点击主类,选择 “Run As” -> “Spring Boot App”。
- IntelliJ IDEA:
步骤 5.3:测试应用
- 打开浏览器,访问
http://localhost:8080来测试您的应用是否成功运行。- 如果一切正常,您应该会看到默认的 Spring Boot 欢迎页面。
6. 测试和调试
步骤 6.1:使用 IDE 的调试功能
- 逐步执行代码,检查变量值,定位可能存在的问题。
- IntelliJ IDEA:
- 设置断点,点击 “Debug ‘Application.main()’”。
- Eclipse:
- 设置断点,点击 “Debug As” -> “Spring Boot App”。
- IntelliJ IDEA:
步骤 6.2:利用日志输出
-
通过配置文件调整日志级别,跟踪应用的行为。
-
编辑
src/main/resources/application.properties文件,添加以下内容:logging.level.root=INFO logging.level.com.example=DEBUG -
重启应用,查看控制台中的日志输出。
-
希望这些详细的步骤对您有所帮助!如果您有任何疑问或需要进一步的帮助,可以私信我哟!
相关文章:
Spring Boot 开发环境搭建详解
下面安装spring boot的详细步骤,涵盖了从安装 JDK 和 Maven 到创建和运行一个 Spring Boot 项目的全过程。 文章目录 1. 安装 JDK步骤 1.1:下载 JDK步骤 1.2:安装 JDK步骤 1.3:配置环境变量 2. 安装 Maven步骤 2.1:下载…...
网络安全中的数据科学如何重新定义安全实践?
组织每天处理大量数据,这些数据由各个团队和部门管理。这使得全面了解潜在威胁变得非常困难,常常导致疏忽。以前,公司依靠 FUD 方法(恐惧、不确定性和怀疑)来识别潜在攻击。然而,将数据科学集成到网络安全中…...
安装数据库客户端工具
如果没有勾选下面的,可以运行下面的两个命令 红框为自带数据库 新建数据库 右键运行mysql文件,找到数据库,并刷新...
GoogleTest做单元测试
目录 环境准备GoogleTest 环境准备 git clone https://github.com/google/googletest.git说cmkae版本过低了,解决方法 进到googletest中 cmake CMakeLists.txt make sudo make installls /usr/local/lib存在以下文件说明安装成功 中间出了个问题就是,…...
深入解析 EasyExcel 组件原理与应用
✨深入解析 EasyExcel 组件原理与应用✨ 官方:EasyExcel官方文档 - 基于Java的Excel处理工具 | Easy Excel 官网 在日常的 Java 开发工作中,处理 Excel 文件的导入导出是极为常见的需求。 今天,咱们就一起来深入了解一款非常实用的操作 Exce…...
JSON数据转化为Excel及数据处理分析
在现代数据处理中,JSON(JavaScript Object Notation)因其轻量级和易于人阅读的特点而被广泛使用。然而,有时我们需要将这些JSON数据转化为Excel格式以便于进一步的分析和处理。本文将介绍如何将JSON数据转化为Excel文件࿰…...
(计算机网络)期末
计算机网络概述 物理层 信源就是发送方 信宿就是接收方 串行通信--一次只发一个单位的数据(串行输入) 并行通信--一次可以传输多个单位的数据 光纤--利用光的反射进行传输 传输之前,要对信源进行一个编码,收到信息之后要进行一个…...
【AI技术赋能有限元分析应用实践】将FEniCS 软件安装在Ubuntu22.04
FEniCS 完整介绍 FEniCS 是一个开源的计算工具包,专门用于解决偏微分方程(PDE)的建模和求解。它以灵活的数学抽象和高效的计算性能著称,可以让用户使用高层次的数学表达来定义问题,而无需关注底层的数值实现细节。 具体来看,FEniCS 是一个开源的高性能计算工具包,用于…...
快速识别模型:simple_ocr,部署教程
快速识别图片中的英文、标点符号、数学符号、Emoji, 模型会输出图片中文字行的坐标位置、最低得分、识别结果。当前服务用到的模型:检测模型、数字识别、英文符号识别。 一、部署流程 1.更新基础环境 apt update2.安装miniconda wget https://repo.anaconda.com/…...
【C/C++】数据库链接入门教程:从零开始的详细指南!MySQL集成与操作
文章目录 环境配置:搭建开发环境的基础步骤2.1 安装MySQL数据库2.2 配置C/C开发环境2.3 下载并安装MySQL Connector/C 基础操作:实现C/C与MySQL的基本交互3.1 建立数据库连接3.2 执行SQL语句3.3 处理查询结果 进阶技巧:提升数据库操作效率与安…...
C#中面试的常见问题005
1、重载和重写 重载(Overloading) 重载是指在同一个类中定义多个同名方法,但参数列表不同(参数的数量、类型或顺序不同)。返回类型可以相同也可以不同。重载方法允许你根据传入的参数类型和数量来调用不同的方法。 …...
使用Redis生成全局唯一id
为了生成一个符合要求的分布式全局ID,我们可以使用 StringRedisTemplate 来实现。这个ID由三部分组成: 符号位(1 bit):始终为0,表示正数。时间戳(31 bit):表示从某个起始…...
pnpm:包管理的新星,平替 npm 和 yarn
pnpm,一个老牌的 node.js 包管理器,支持 npm 的所有功能,完全足以用来替代 npm。它采用全局存储,每个项目内部使用了硬链接,所以很省空间,安装速度快。 本文介绍下 pnpm 的基本概念,安装、…...
Android调起系统分享图片到其他应用
Android调起系统分享图片到其他应用 有时候分享不想接第三方的,其实如果你的分享要求不是很高,调系统的分享也是可以的。 一、思路: 用intent.action Intent.ACTION_SEND 二、效果图: 三、关键代码: //这个是分享…...
详解Qt QBuffer
文章目录 **QBuffer 的详解****前言****QBuffer 是什么?****QBuffer 的主要用途****构造函数****主要成员函数详解****1. open()****原型:****作用:****参数:****返回值:****示例代码:** **2. write()****原…...
Python基础学习-11函数参数
1、"值传递” 和“引用传递” 1)不可变的参数通过“值传递”。比如整数、字符串等 2)可变的参数通过“引用参数”。比如列表、字典。 3)避免可变参数的修改 4)内存模型简介 2、函数参数类型 1) def func() #无参…...
GTK#框架让C# Winform程序跨平台运行
在软件开发领域,跨平台能力是一个重要的考量因素。对于C#开发者来说,Winform是构建桌面应用的强大工具,但原生Winform只支持Windows平台。幸运的是,GTK#框架的出现让C# Winform程序跨平台运行成为可能。本文将详细介绍如何使用GTK…...
在Kubernetes使用CronJob实现定时删除指定天数外的文件(我这里使用删除备份mysql数据库文件为例)
文章目录 一、代码使用方式1、golang代码2、使用方法二、容器镜像使用方式1、制作镜像2、我公开的镜像3、使用方法一、代码使用方式 1、golang代码 vim cleanfile.go package mainimport ("flag""fmt""io/ioutil""os""path/fi…...
使用 Elastic 收集 Windows 遥测数据:ETW Filebeat 输入简介
作者:来自 Elastic Chema Martinez 在安全领域,能够使用 Windows 主机的系统遥测数据为监控、故障排除和保护 IT 环境开辟了新的可能性。意识到这一点,Elastic 推出了专注于 Windows 事件跟踪 (ETW) 的新功能 - 这是一种强大的 Windows 原生机…...
力扣-位运算-4【算法学习day.44】
前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...
