当前位置: 首页 > news >正文

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
  1. 访问 Oracle 官方网站

    • 打开浏览器,访问 Oracle 官方网站。
    • 选择适合您操作系统的 JDK 版本进行下载。
  2. 访问 OpenJDK 官网

    • 打开浏览器,访问 OpenJDK 官网。
    • 选择适合您操作系统的 OpenJDK 版本进行下载。
步骤 1.2:安装 JDK
  1. Windows

    • 双击下载的安装包,按照安装向导进行安装。
    • 选择安装路径,默认路径通常是 C:\Program Files\Java\jdk-<version>
  2. Linux

    • 打开终端,使用以下命令安装 OpenJDK:

      sudo apt update
      sudo apt install openjdk-17-jdk
      
步骤 1.3:配置环境变量
  1. Windows

    • 打开“控制面板” -> “系统和安全” -> “系统” -> “高级系统设置” -> “环境变量”。
    • 在“系统变量”部分,点击“新建”,添加变量名 JAVA_HOME,变量值为 JDK 安装路径(例如 C:\Program Files\Java\jdk-<version>)。
    • 编辑系统变量 Path,点击“新建”,添加 %JAVA_HOME%\bin
  2. 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
  1. 访问 Apache Maven 官方网站
    • 打开浏览器,访问 Apache Maven 官方网站。
    • 选择适合您操作系统的 Maven 版本进行下载。
步骤 2.2:解压文件
  1. Windows

    • 将下载的压缩包解压到一个合适的目录,例如 C:\Program Files\Apache\maven
  2. Linux

    • 打开终端,使用以下命令解压:

      tar -xvf apache-maven-<version>-bin.tar.gz -C /opt/
      
步骤 2.3:配置环境变量
  1. Windows

    • 打开“控制面板” -> “系统和安全” -> “系统” -> “高级系统设置” -> “环境变量”。
    • 在“系统变量”部分,点击“新建”,添加变量名 MAVEN_HOME,变量值为 Maven 安装路径(例如 C:\Program Files\Apache\maven)。
    • 编辑系统变量 Path,点击“新建”,添加 %MAVEN_HOME%\bin
  2. Linux

    • 打开终端,编辑 ~/.bashrc~/.profile 文件,添加以下内容:

      export MAVEN_HOME=/opt/apache-maven-<version>
      export PATH=$MAVEN_HOME/bin:$PATH
      
    • 使配置生效:

      source ~/.bashrc
      

3. 配置 IDE

步骤 3.1:下载并安装 IDE
  1. IntelliJ IDEA

    • 访问 IntelliJ IDEA 官方网站,下载并安装适合您操作系统的版本。
  2. Eclipse

    • 访问 Eclipse 官方网站,下载并安装适合您操作系统的版本。
步骤 3.2:配置 IDE
  1. IntelliJ IDEA

    • 打开 IntelliJ IDEA,点击“File” -> “Project Structure” -> “SDKs”,添加 JDK。
    • 点击“File” -> “Settings” -> “Build, Execution, Deployment” -> “Build Tools” -> “Maven”,配置 Maven 安装路径。
  2. Eclipse

    • 打开 Eclipse,点击“Window” -> “Preferences” -> “Java” -> “Installed JREs”,添加 JDK。
    • 点击“Window” -> “Preferences” -> “Maven” -> “Installations”,配置 Maven 安装路径。

4. 创建 Spring Boot 项目

步骤 4.1:访问 Spring Initializr
  1. 打开浏览器,访问 https://start.spring.io/。
步骤 4.2:配置项目
  1. 选择您的项目类型(例如 Maven Project)、语言(Java)、Spring Boot 版本等。
  2. 添加所需的依赖,比如 “Web” 依赖来创建一个 Web 应用。
步骤 4.3:生成项目
  1. 点击 “Generate” 按钮下载项目压缩包。
  2. 解压后导入到您的 IDE 中。
    • IntelliJ IDEA
      • 打开 IntelliJ IDEA,点击“File” -> “Open”,选择解压后的项目目录。
    • Eclipse
      • 打开 Eclipse,点击“File” -> “Import” -> “Existing Maven Projects”,选择解压后的项目目录。

5. 运行 Spring Boot 应用

步骤 5.1:找到主类
  1. 在 IDE 中,找到 src/main/java 目录下的主类,该类包含 @SpringBootApplication 注解。
步骤 5.2:运行应用
  1. 右键点击主类,选择 “Run” 或 “Debug” 选项来启动应用。
    • IntelliJ IDEA
      • 右键点击主类,选择 “Run ‘Application.main()’”。
    • Eclipse
      • 右键点击主类,选择 “Run As” -> “Spring Boot App”。
步骤 5.3:测试应用
  1. 打开浏览器,访问 http://localhost:8080 来测试您的应用是否成功运行。
    • 如果一切正常,您应该会看到默认的 Spring Boot 欢迎页面。

6. 测试和调试

步骤 6.1:使用 IDE 的调试功能
  1. 逐步执行代码,检查变量值,定位可能存在的问题。
    • IntelliJ IDEA
      • 设置断点,点击 “Debug ‘Application.main()’”。
    • Eclipse
      • 设置断点,点击 “Debug As” -> “Spring Boot App”。
步骤 6.2:利用日志输出
  1. 通过配置文件调整日志级别,跟踪应用的行为。

    • 编辑 src/main/resources/application.properties 文件,添加以下内容:

      logging.level.root=INFO
      logging.level.com.example=DEBUG
      
    • 重启应用,查看控制台中的日志输出。

希望这些详细的步骤对您有所帮助!如果您有任何疑问或需要进一步的帮助,可以私信我哟!

相关文章:

Spring Boot 开发环境搭建详解

下面安装spring boot的详细步骤&#xff0c;涵盖了从安装 JDK 和 Maven 到创建和运行一个 Spring Boot 项目的全过程。 文章目录 1. 安装 JDK步骤 1.1&#xff1a;下载 JDK步骤 1.2&#xff1a;安装 JDK步骤 1.3&#xff1a;配置环境变量 2. 安装 Maven步骤 2.1&#xff1a;下载…...

网络安全中的数据科学如何重新定义安全实践?

组织每天处理大量数据&#xff0c;这些数据由各个团队和部门管理。这使得全面了解潜在威胁变得非常困难&#xff0c;常常导致疏忽。以前&#xff0c;公司依靠 FUD 方法&#xff08;恐惧、不确定性和怀疑&#xff09;来识别潜在攻击。然而&#xff0c;将数据科学集成到网络安全中…...

安装数据库客户端工具

如果没有勾选下面的&#xff0c;可以运行下面的两个命令 红框为自带数据库 新建数据库 右键运行mysql文件&#xff0c;找到数据库&#xff0c;并刷新...

GoogleTest做单元测试

目录 环境准备GoogleTest 环境准备 git clone https://github.com/google/googletest.git说cmkae版本过低了&#xff0c;解决方法 进到googletest中 cmake CMakeLists.txt make sudo make installls /usr/local/lib存在以下文件说明安装成功 中间出了个问题就是&#xff0c;…...

深入解析 EasyExcel 组件原理与应用

✨深入解析 EasyExcel 组件原理与应用✨ 官方&#xff1a;EasyExcel官方文档 - 基于Java的Excel处理工具 | Easy Excel 官网 在日常的 Java 开发工作中&#xff0c;处理 Excel 文件的导入导出是极为常见的需求。 今天&#xff0c;咱们就一起来深入了解一款非常实用的操作 Exce…...

JSON数据转化为Excel及数据处理分析

在现代数据处理中&#xff0c;JSON&#xff08;JavaScript Object Notation&#xff09;因其轻量级和易于人阅读的特点而被广泛使用。然而&#xff0c;有时我们需要将这些JSON数据转化为Excel格式以便于进一步的分析和处理。本文将介绍如何将JSON数据转化为Excel文件&#xff0…...

(计算机网络)期末

计算机网络概述 物理层 信源就是发送方 信宿就是接收方 串行通信--一次只发一个单位的数据&#xff08;串行输入&#xff09; 并行通信--一次可以传输多个单位的数据 光纤--利用光的反射进行传输 传输之前&#xff0c;要对信源进行一个编码&#xff0c;收到信息之后要进行一个…...

【AI技术赋能有限元分析应用实践】将FEniCS 软件安装在Ubuntu22.04

FEniCS 完整介绍 FEniCS 是一个开源的计算工具包,专门用于解决偏微分方程(PDE)的建模和求解。它以灵活的数学抽象和高效的计算性能著称,可以让用户使用高层次的数学表达来定义问题,而无需关注底层的数值实现细节。 具体来看,FEniCS 是一个开源的高性能计算工具包,用于…...

快速识别模型:simple_ocr,部署教程

快速识别图片中的英文、标点符号、数学符号、Emoji, 模型会输出图片中文字行的坐标位置、最低得分、识别结果。当前服务用到的模型&#xff1a;检测模型、数字识别、英文符号识别。 一、部署流程 1.更新基础环境 apt update2.安装miniconda wget https://repo.anaconda.com/…...

【C/C++】数据库链接入门教程:从零开始的详细指南!MySQL集成与操作

文章目录 环境配置&#xff1a;搭建开发环境的基础步骤2.1 安装MySQL数据库2.2 配置C/C开发环境2.3 下载并安装MySQL Connector/C 基础操作&#xff1a;实现C/C与MySQL的基本交互3.1 建立数据库连接3.2 执行SQL语句3.3 处理查询结果 进阶技巧&#xff1a;提升数据库操作效率与安…...

C#中面试的常见问题005

1、重载和重写 重载&#xff08;Overloading&#xff09; 重载是指在同一个类中定义多个同名方法&#xff0c;但参数列表不同&#xff08;参数的数量、类型或顺序不同&#xff09;。返回类型可以相同也可以不同。重载方法允许你根据传入的参数类型和数量来调用不同的方法。 …...

使用Redis生成全局唯一id

为了生成一个符合要求的分布式全局ID&#xff0c;我们可以使用 StringRedisTemplate 来实现。这个ID由三部分组成&#xff1a; 符号位&#xff08;1 bit&#xff09;&#xff1a;始终为0&#xff0c;表示正数。时间戳&#xff08;31 bit&#xff09;&#xff1a;表示从某个起始…...

pnpm:包管理的新星,平替 npm 和 yarn

​ pnpm&#xff0c;一个老牌的 node.js 包管理器&#xff0c;支持 npm 的所有功能&#xff0c;完全足以用来替代 npm。它采用全局存储&#xff0c;每个项目内部使用了硬链接&#xff0c;所以很省空间&#xff0c;安装速度快。 本文介绍下 pnpm 的基本概念&#xff0c;安装、…...

Android调起系统分享图片到其他应用

Android调起系统分享图片到其他应用 有时候分享不想接第三方的&#xff0c;其实如果你的分享要求不是很高&#xff0c;调系统的分享也是可以的。 一、思路&#xff1a; 用intent.action Intent.ACTION_SEND 二、效果图&#xff1a; 三、关键代码&#xff1a; //这个是分享…...

详解Qt QBuffer

文章目录 **QBuffer 的详解****前言****QBuffer 是什么&#xff1f;****QBuffer 的主要用途****构造函数****主要成员函数详解****1. open()****原型&#xff1a;****作用&#xff1a;****参数&#xff1a;****返回值&#xff1a;****示例代码&#xff1a;** **2. write()****原…...

Python基础学习-11函数参数

1、"值传递” 和“引用传递” 1&#xff09;不可变的参数通过“值传递”。比如整数、字符串等 2&#xff09;可变的参数通过“引用参数”。比如列表、字典。 3&#xff09;避免可变参数的修改 4&#xff09;内存模型简介 2、函数参数类型 1&#xff09; def func() #无参…...

GTK#框架让C# Winform程序跨平台运行

在软件开发领域&#xff0c;跨平台能力是一个重要的考量因素。对于C#开发者来说&#xff0c;Winform是构建桌面应用的强大工具&#xff0c;但原生Winform只支持Windows平台。幸运的是&#xff0c;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 输入简介

作者&#xff1a;来自 Elastic Chema Martinez 在安全领域&#xff0c;能够使用 Windows 主机的系统遥测数据为监控、故障排除和保护 IT 环境开辟了新的可能性。意识到这一点&#xff0c;Elastic 推出了专注于 Windows 事件跟踪 (ETW) 的新功能 - 这是一种强大的 Windows 原生机…...

力扣-位运算-4【算法学习day.44】

前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程&#xff08;例如想要掌握基础用法&#xff0c;该刷哪些题&#xff1f;&#xff09;我的解析也不会做的非常详细&#xff0c;只会提供思路和一些关键点&#xff0c;力扣上的大佬们的题解质量是非…...

Stable Diffusion 3详解

&#x1f33a;系列文章推荐&#x1f33a; 扩散模型系列文章正在持续的更新&#xff0c;更新节奏如下&#xff0c;先更新SD模型讲解&#xff0c;再更新相关的微调方法文章&#xff0c;敬请期待&#xff01;&#xff01;&#xff01;&#xff08;本文及其之前的文章均已更新&…...

c#异步编程(async/await)

注&#xff1a;下文摘自ChatGPT&#xff0c;总结与案例都非常完善&#xff0c;可以快速理解并应用 0&#xff1a;使用场景 在winform界面程序中&#xff0c;在ui操作中涉及到一些耗时的等待操作&#xff0c;使用线程自己处理已经显得力不从心&#xff0c;如何能更好的实现&am…...

TCP/IP学习笔记

TCP\IP从实际应用的五层结构开始&#xff0c;自顶而下的去分析每一层。 TCP/IP五层架构概述 学术上面是TCP/IP四层架构&#xff0c;OSI/ISO是七层架构&#xff0c;实际中使用的是TCP/IP五层架构。 数据链路层 ICMP数据包分析 Wireshark抓包分析ICMP协议_wireshark抓ping包分析…...

0000_vim自定义快捷键_alias

vim自定义快捷键_alias 如下&#xff1a; 1.直接打开vi ~/.bashrc 然后到最底部&#xff0c;添加alias快捷键 2.添加alias快捷键mgplat 以后只要发送mgplat就等于出发了那么长一条指令 3.保存退出即可 【注意】 操作完后&#xff0c;可能你用mgplat无法使用&#xff0c;可…...

Spring Boot项目中,实体类是否需要实现Serializable接口

在Spring Boot项目中&#xff0c;实体类是否需要实现Serializable接口并不是一个硬性规定&#xff0c;而是取决于具体的应用场景和需求。以下是对这一问题的更详细分析&#xff1a; 1. 序列化的基本概念 序列化是将对象的状态信息转换为可以存储或传输的形式的过程。反序列化则…...

打通工业通信壁垒实现Ethernetip转profinet网络互通

西门子S7-1500 PLC&#xff08;profinet&#xff09;与AB PLC 1769-L32E以太网通讯&#xff08;EtherNet/IP&#xff09;。今天与大家分享一篇Profinet转EtherNet/IP的通讯配置方案。本文主要介绍开疆智能的Profinet转EtherNet/IP网关KJ-PNG-208&#xff0c;连接西门子S7-1500 …...

数据结构_图的应用

最小生成树 Prim算法 int AMGraph::sum(string v) {int start, totalW, cnt, minW, u, vv, i, j;start LocateVex(v); // 获取起始顶点编号memset(visited, false, sizeof(visited)); // 初始化访问状态visited[start] true;totalW 0; // 最小生成树的总权重cnt 1; // 当前…...

C#中面试的常见问题002

1.wpf和Winfrom的区别 1. 技术基础 WPF&#xff1a;基于.NET Framework&#xff0c;使用XAML&#xff08;可扩展应用程序标记语言&#xff09;作为界面描述语言&#xff0c;支持矢量图形和高级布局。WinForms&#xff1a;基于.NET Framework&#xff0c;使用纯代码或拖放设计…...

快速理解微服务中Ribbon的概念

一.基本概念 1.在微服务架构中&#xff0c;Ribbon 是一个客户端负载均衡器&#xff0c;用于控制服务间的通信方式。 2.Ribbon 是一个开源的库&#xff0c;最早由 Netflix 开发&#xff0c;用于实现客户端负载均衡。 3.Ribbon 主要解决的是在微服务架构中&#xff0c;多个服务…...

K8S简介、使用教程

以下是关于 Kubernetes&#xff08;通常缩写为 K8S&#xff09;的简介和使用教程&#xff1a; 一、Kubernetes 简介 定义与作用 Kubernetes 是一个开源的容器编排平台&#xff0c;用于自动化部署、扩展和管理容器化应用程序。它最初由谷歌开发&#xff0c;后捐赠给云原生计算基…...

大连网站建设公司/seo收索引擎优化

...

新校区建设网站管理规定/杭州疫情最新情况

如果版本开发测试过程中没有流程的约束&#xff0c;会出现什么样的情况&#xff1f;如果不管版本大小、不考虑版本特性强制使用标准流程约束&#xff0c;又会是什么样&#xff1f;我经常听到的抱怨是流程太厚重了&#xff0c;流程导致了版本开发周期变长、成本增加了。可是&…...

公司宣传片制作多少钱/seo专业培训班

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录前言一.W25Q32-Flash1.官方说明2.引脚排列3.特殊引脚说明1.串行数输入输出和IOS (DI DO和IO0, IO1,IO2,IO3)2.写保护&#xff08;/WP&#xff09;3.保持端&#xff0…...

策划网站做营销推广/学校教育培训机构

缓存实现的过程以及淘汰旧页面的机制不同&#xff0c;所以会有不同缓存调度方法&#xff0c;就常见的就是FIFO&#xff0c;LRU&#xff0c;LFU缓存过期策略。 1.FIFO&#xff08;First In First out&#xff09;&#xff1a;先见先出&#xff0c;淘汰最先近来的页面&#xff0…...

网站制作 需要什么网络技术/网站首页制作网站

引&#xff1a;http://www.javaeye.com/topic/283668 近期taowen同学连续发起了两起关于贫血模型和领域模型的讨论&#xff0c;引起了大家的广泛热烈的讨论&#xff0c;可是讨论(或者说是争论)的结果究竟如何&#xff0c;我想值得商榷。问题是大家对贫血模型和领域模型都有自己…...

为企业做网站电话开场白/企业网站seo方案

设置仓库可见性您可选择能够查看仓库的人员。本文内容关于仓库可见性将仓库设置为私有把仓库设置为公共把仓库设为内部关于仓库可见性创建仓库时&#xff0c;您可以选择将其设为公共、内部或私有。 公共仓库可供使用GitHub.com 的所有人访问&#xff0c;而私有仓库只有您和您与…...