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

Spring系列学习二、Spring框架的环境配置

Spring框架的环境配置

  • 一、Java环境配置
  • 二、 Spring框架的安装与配置
  • 三、Maven与Gradle环境的配置
  • 四、IDE环境配置(Eclipse与IntelliJ IDEA)
  • 五、结语

一、Java环境配置

所有编程旅程总是得从基础开始,如同乐高积木大作的基座,首先我们需要配置Java环境。别紧张!这过程比想象中简单多了,甚至比喝杯冷啤酒还简单。只需要识别你的操作系统类型,然后到oracle官网下载对应的Java开发工具包(JDK),建议下载Java17或Java21,因为我们本系统spring使用6.1.2版本,需要最低Java17,下载和安装教程,参考安装教程。就像你从冰箱里拿一罐无酒精啤酒,冷冰冰的就在那等你。「啪」一声,瓶盖开了。一样,安装JDK就是「下一步」、「下一步」、「完成」,那一刻你不禁想喊出“爽”。
在这里插入图片描述

不过,我们还需要干一件重要的事——设置环境变量。JDK安装好后,我们需添加JAVA_HOME,指向你的JDK目录。然后把JAVA_HOME/bin添加到Path变量里,在上面说的安装教程里有详细介绍。不接触这两个变量,你的Java开发之路就无法启动。别怕,这对你来说小菜一碟,就如同把瓶装啤酒倒进玻璃杯,就是这么简单。

二、 Spring框架的安装与配置

既然我们已经配置好Java环境,那么也达到了安装Spring框架的时候。你难道不想知道Spring框架如何让Java的生态世界如此美丽吗?这一步类似于你拿起那台一直想骑的自行车,把气候恰好,放风的车胎充好气,准备出发!

在Spring官网上,你可以找到最新的Spring Framework版本(spring源码),接着解压到你认定靠谱的地方。这个步骤就像把刚刚买到手的新玩具卸下来,兴奋地探索每一个零件。最后,将所有的JAR文件放入你的项目的库目录中,也就是把所有零件组装起来,准备万全。

在这里插入图片描述
当然,现在看来这种方式还是有点土, 实际上,我们在新的项目开发过程中,一般都是通过创建maven项目或gradle项目的,使用他们来管理依赖的jar,如果是创建的maven项目或gradle项目, 使用起来非常简单,只需要在pom.xml配置中,引入依赖的spring对应的maven坐标, 或者是gradle项目,只需要在gradle的配置文件中,引入依赖的spring对应的gradle坐标。详细可以参看spring引入。
在这里插入图片描述

三、Maven与Gradle环境的配置

通常来说,对于大型项目来说,我们需要Maven或者Gradle来做自动构建。这就像是将你刚买的新自行车轮胎充满气,看看哪个更适合你的掌控。其实,他们两个都有很好的跨平台特性和依赖管理。值得注意的一点是,Gradle提供了更灵活的配置方式,虽然这就意味着复杂性的提高。但没关系,我们一步步来。(本系列将采用maven进行代码依赖管理,Gradle可也是基于maven实现的管理,有空可以了解下。)

Maven只需要几个命令就能安装好。首先,从Apache Maven官方网站下载,解压缩到适当位置,然后更新“M2_HOME”和“PATH”环境变量即可。Windows电脑环境变量配置参考 MAC电脑环境变量配置参考
听起来是不是和调音乐似的,找对位置,弄明白节奏,然后一切就灵活起来。基于Maven创建JAVA应用,可参考spring官网说明,地址如下:https://spring.io/guides/gs/maven/。

接下来,安装和配置Gradle过程类似,只是需要再额外设置“GRADLE_HOME”。真的,比你想象的要简单!就像把自行车从地上抬起来,放上马鞍,接着就能迎风而行。基于Gradle创建JAVA应用,可参考spring官网说明,地址如下:https://spring.io/guides/gs/gradle/ 。

四、IDE环境配置(Eclipse与IntelliJ IDEA)

有了所有这些工具和环境,现在,我们需要一个像样的集成开发环境(IDE)来编写代码。选择一款合适的IDE就像在全球大型公司的多样化产品清单上选择一款适合自己的商品。尽管Eclipse和IntelliJ IDEA都是不错的选择,但它们的定位和主要功能有所不同。

其实,说到底,选择IDE是个人口味选择的问题。如果你想玩安全,那就选择Eclipse,因为它是Java开发的老牌熟手,依靠插件提供强大功能。但需要注意,因为Eclipse对内存要求较高,所以你最好为它准备足够的运行空间。简单点说,Eclipse就像是那杯热巧克力,温暖、全面,让人心满意足。

与此相反,如果你是个喜欢探索新事物的人,那么你可能会对IntelliJ IDEA比较感兴趣。IDEA操作简单,功能强大,但需要开发者花费更多时间学习和适应,就像黑巧克力,甘苦并存,却令人欲罢不能。本文以IntelliJ IDEA为例讲解, Intellij IDEA官网。
在这里插入图片描述

知道了大概选择了哪款IDE后,接下来只需要下载并安装。和以前一样,安装基本上就是「下一步」、「下一步」、「完成」这个流程。安装好之后,我们需要配置JDK以及Spring Library。在定义环境变量时,你需要指定你的项目和模块SDK。在这个过程中,你将体验到简洁与高效的魅力, IDEA的使用有问题,可以自行搜索,相信你一定能轻松解决。

五、结语

好了,本章节讲解的内容比较繁琐,涉及Java环境、Spring框架、Maven、Gradle,以及IDE的配置,这些基础部署工作都是我们进入编程世界的敲门砖。一旦你完成这些配置,你就准备好深入学习Spring与Java集成开发了。
在下一章,我们会探讨如何利用这些工具和环境来编写你的第一个Spring程序。没错,我们即将启航,航向一个全新的世界。拉紧安全带,我们即将起航!

相关文章:

Spring系列学习二、Spring框架的环境配置

Spring框架的环境配置 一、Java环境配置二、 Spring框架的安装与配置三、Maven与Gradle环境的配置四、IDE环境配置(Eclipse与IntelliJ IDEA)五、结语 一、Java环境配置 所有编程旅程总是得从基础开始,如同乐高积木大作的基座,首先…...

基于飞浆OCR的文本框box及坐标中心点检测JSON格式保存文本

OCR的文本框box及JSON数据保存 需求说明 一、借助飞浆框出OCR识别的文本框 二、以圆圈形式标出每个框的中心点位置 三、以JSON及文本格式保存OCR识别的文本 四、以文本格式保存必要的文本信息 解决方法 一、文本的坐标来自飞浆的COR识别 二、借助paddleocr的draw_ocr画出…...

ubuntu 安装docker GPG error缺少公钥解决方法

文章目录 报错信息解决方案 报错信息 W: GPG error: http://mirrors.aliyun.com/docker-ce/linux/ubuntu focal InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8 E: The repository ‘http:…...

Laravel的知识点

1.{{ }} 是在 HTML 中内嵌 PHP 的 Blade 语法标识符,表示包含在该区块内的代码都将使用 PHP 来编译运行。 2.两种写法 3.return void 在这段注释中,"return void" 表示该函数或方法没有返回值。这意味着它执行某些操作或任务,但…...

STM32 基础知识(探索者开发板)--103讲 通用定时器

定时器溢出时间计算方法: Tout ((arr 1) * (psc 1)) / Ft us arr:自动重装载值 psc:时钟预分频数 定时器相关实验通用步骤 1.定时器初始化 a.定义结构体句柄 b.设基地址 c.设分频系数 d.设自动重装载值 e. 设计数模式 f.初始化定时器 2.外设模式配置 a.设置模式 d.映…...

mysqld_exporter使用

下载自己解压好 https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz在需要监控的数据库上执行 CREATE USER monit_test* IDENTIFIED BY Sfn4ZCHsK WITH MAX_USER_CONNECTIONS 3; GRANT PROCESS, REPLICATI…...

Java 解决远程调用 ssl 证书认证问题

Java 解决远程调用 ssl 证书认证问题 方法 1方法 2方法 3 方法 1 在 jdk 目录导入证书。 首先要下载 服务器 ssl 证书,下载完成之后。把它命名成 Root.cer 后面使用 cmd 命令行 在 jdk 目录导入。 例如 : jdk 的目录为:D:\JetBranins\Intel…...

kubernetes(k8s) Yaml 文件详解

YAML格式:用于配置和管理,YAML是一种简洁的非标记性语言,内容格式人性化,较易读。 1、查看API 资源版本标签 kubectl api-versions 2、编写资源配置清单 kubectl create -f nginx-test.yaml --validatefalse 2.3 查看创建的po…...

手拉手后端Springboot整合JWT

环境介绍 技术栈 springbootmybatis-plusmysqljava-jwt 软件 版本 mysql 8 IDEA IntelliJ IDEA 2022.2.1 JDK 1.8 Spring Boot 2.7.13 mybatis-plus 3.5.3.2 Json Web令牌简称JWT Token是在服务端产生的一串字符串是客户端访问资源接口(AP)时所需要的资源凭证。…...

小狐狸GPT付费2.4.9 去除授权弹窗版

后台安装步骤: 1、在宝塔新建个站点,php版本使用7.2 、 7.3 或 7.4,把压缩包上传到站点根目录,运行目录设置为/public 2、导入数据库文件,数据库文件是 /db.sql 3、修改数据库连接配置,配置文件是/.env 4、…...

Scrapy爬虫中合理使用time.sleep和Request

概述 在Scrapy爬虫中,我们需要深入分析time.sleep和Request对象对并发请求的影响。time.sleep函数用于在发起请求之前等待一段时间,而Request对象用于发送HTTP请求。我们必须仔细考虑这些操作对其他并发请求的潜在影响,以及在异步情况下可能…...

在Spring Cloud中使用Ribbon完成一个简单的负载均衡demo

Spring Cloud系列断更了有一段时间了,这段时间最近都在忙着项目上的事,天天修复bug以及调整需求,反正各种操劳,了解业务需求,然后开发相关功能,很久都没碰Spring Cloud系列的相关文章了,最近回头…...

mysql-5.6.16的内存泄漏问题

一、背景 有一台物理机上一个版本为5.6.16的从库出现了内存的增高,观测其日志可以发现,这台数据库已经oom很多次了,并且stop slave的时候会卡住非常长的时间才能停止 二、根本原因 上述的现象可以看到是一个明显的内存泄漏现象&#xff0c…...

相机内参标定理论篇------相机模型选择

相机种类&#xff1a; 当拿到一款需要标定内参的相机时&#xff0c;第一个问题就是选择那种的相机模型。工程上相机类型的划分并不是十分严格&#xff0c;一般来说根据相机FOV可以把相机大概分为以下几类&#xff1a; 长焦相机&#xff1a;< 标准相机&#xff1a;~&…...

java设计模式学习之【状态模式】

文章目录 引言状态模式简介定义与用途实现方式 使用场景优势与劣势在Spring框架中的应用状态示例代码地址 引言 设想你正在使用一个在线视频播放器观看电影。随着你的互动&#xff0c;播放器可能处于不同的状态&#xff1a;播放、暂停、缓冲或结束。每个状态下&#xff0c;播放…...

使用aspose.Words更新表格列宽

public static bool UpdateTableStyle(string filePath) { try { Document doc new Document(); //样式 Style style doc.Styles.Add(StyleType.Paragraph, "cellStyle"); style.Font.Name "simsun"; PageSetup pageSet doc.Sections[0].PageSetup; pa…...

pycharm 工具栏不见了

新版pycharm后&#xff0c; 菜单栏和工具栏不见了 目录 我发现的解决方法&#xff1a; 其他旧版的解决方法&#xff1a; 我发现的解决方法&#xff1a; 其他旧版的解决方法&#xff1a; 另外&#xff0c;一些使用pycharm的新手可能会由于不熟悉软件的功能而误操作&#xff…...

图灵日记之java奇妙历险记--类和对象

目录 类的定义和使用类的定义格式 类的实例化类和对象的说明 this引用this引用的特性 对象的构造及初始化就地初始化构造方法 封装包导入包中的类自定义包 static成员static修饰成员变量static修饰成员方法 代码块代码块概念及分类构造代码块静态代码块 匿名对象 类的定义和使用…...

Kotlin 枚举类

使用 enum 修饰符&#xff1b;每个枚举常量都是一个对象&#xff0c;枚举常量以逗号分隔 // 枚举类 enum class Direction {NORTH, SOUTH, WEST, EAST }// 每一个枚举都是枚举类的实例&#xff0c;所以可以这样初始化 enum class Color(val rgb: Int) {RED(0xFF0000),GREEN(0x…...

可运营的Leadshop开源商城小程序源码 +H5公众号+带视频教程

源码简介 Leadshop是一款出色的开源电商系统&#xff0c;具备轻量级、高性能的特点&#xff0c;并提供持续更新和迭代服务。该系统采用前后端分离架构&#xff08;uniappyii2.0&#xff09;&#xff0c;以实现最佳用户体验为目标。 前端部分采用了uni-app、ES6、Vue、Vuex、V…...

VCS编译SystemVerilog时,那个‘-P’选项你加对了吗?详解Verdi PLI配置

VCS编译SystemVerilog时&#xff0c;那个‘-P’选项你加对了吗&#xff1f;详解Verdi PLI配置 在芯片验证的日常工作中&#xff0c;VCSVerdi的组合堪称黄金搭档。但当你满怀信心地敲下编译命令&#xff0c;却发现怎么也生成不了关键的fsdb波形文件时&#xff0c;那种挫败感简直…...

Ubuntu 22.04上,用Cephadm 17.2.0搭建单节点Ceph集群的保姆级避坑指南

Ubuntu 22.04单节点Ceph集群实战&#xff1a;从零到生产级部署的17个关键细节 当你在Ubuntu 22.04上尝试用Cephadm搭建单节点Ceph集群时&#xff0c;是否遇到过这些场景&#xff1a;bootstrap卡在某个步骤超过半小时、OSD设备明明存在却显示"no available devices"、…...

一开口就聊到客户心坎里的沟通话术

先把人聊顺&#xff0c;事自然就顺了一位资深顾问&#xff0c;老客户复购和转介绍特别多。她的秘诀很简单&#xff1a;先聊人&#xff0c;再聊事。有次对接一位态度疏离的客户&#xff0c;她没直接问方案&#xff0c;而是看到客户朋友圈刚出去玩&#xff0c;便说&#xff1a;“…...

Java线程与操作系统线程的生命周期

平时不管是面试还是线上排查问题&#xff0c;线程生命周期都是绕不开的点&#xff0c;但我发现Java线程的状态和操作系统&#xff08;OS&#xff09;底层的线程状态很容易搞混&#xff0c;本文就来理清楚二者的区别。 先说个大前提&#xff1a; 我们常用的HotSpot虚拟机&#x…...

TouchGal:3个关键功能让你成为真正的Galgame收藏家

TouchGal&#xff1a;3个关键功能让你成为真正的Galgame收藏家 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next 你是否曾为寻找心仪的…...

VSCode配置PyTorch开发环境:从CUDA版本检查到镜像源加速(附常见报错解决方案)

VSCode配置PyTorch开发环境&#xff1a;从CUDA版本检查到镜像源加速&#xff08;附常见报错解决方案&#xff09; 在深度学习领域&#xff0c;PyTorch凭借其动态计算图和易用性已成为研究者和开发者的首选框架。然而&#xff0c;配置PyTorch开发环境时&#xff0c;CUDA版本匹配…...

隐私保护×效率提升:开源OCR工具如何重构3大行业文本处理流程

隐私保护效率提升&#xff1a;开源OCR工具如何重构3大行业文本处理流程 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片&#xff0c;PDF文档识别&#xff0c;排除水印/页眉页脚&#xff0c;扫描/生成二维码。内置多…...

基于SpringBoot + Vue的学生学习成果管理平台

文章目录前言一、详细操作演示视频二、具体实现截图三、技术栈1.前端-Vue.js2.后端-SpringBoot3.数据库-MySQL4.系统架构-B/S四、系统测试1.系统测试概述2.系统功能测试3.系统测试结论五、项目代码参考六、数据库代码参考七、项目论文示例结语前言 &#x1f49b;博主介绍&#…...

AI运维管理与安全防护设备功率MOSFET选型方案——高效、可靠与智能驱动系统设计指南

随着智能化运维与主动安全防护需求的爆发式增长&#xff0c;AI边缘计算节点、智能传感器与安全执行单元已成为现代基础设施管理的核心。其电源管理与信号驱动系统作为设备可靠运行与实时响应的基石&#xff0c;直接决定了系统的能效、稳定性及防护等级。功率MOSFET作为该系统中…...

终极Redis可视化工具:Another Redis Desktop Manager完全使用指南

终极Redis可视化工具&#xff1a;Another Redis Desktop Manager完全使用指南 【免费下载链接】AnotherRedisDesktopManager &#x1f680;&#x1f680;&#x1f680;A faster, better and more stable Redis desktop manager [GUI client], compatible with Linux, Windows, …...