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

news2025/2/7 17:19:07

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程序。没错,我们即将启航,航向一个全新的世界。拉紧安全带,我们即将起航!

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

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

相关文章

Ubuntu20.04-查看GPU的使用情况及输出详解

1. 查看GPU的使用情况 1.1 nvidia-smi # 直接在终端得到显卡的使用情况 # 不会自动刷新 nvidia-smi# 重定向到文件中 nvidia-smi > nvidia_smi_output.txt# 如果输出的内容部分是以省略号表示的,可以-q nvidia-smi -q 1.2 nvidia-smi -l # 会自动刷新&#x…

Python高级用法:enumerate(枚举)

enumerate(枚举) 在编写代码时,为了遍历列表并获取每个元素在列表中的索引,我们可以使用Python中的enumerate函数。下面是一个简单的例子,演示了如何使用enumerate函数实现相同的功能。 原始代码片段: i…

keepalived高可用 | 部署Ceph分布式存储

keepalived高可用 | 部署Ceph分布式存储 keepalived高可用1. 配置第二台haproxy代理服务器部署HAProxy 2.为两台代理服务器配置keepalived配置第一台代理服务器proxy (192.168.4.5)配置第二台代理服务器proxy (192.168.4.6)修改DNS服务器 部署ceph分布式存储准备硬件实验环境准…

10个值得收藏的机器视觉标注工具

推荐:用 NSDT编辑器快速搭建可编程3D场景 我们知道寻找良好的图像标记和注释工具对于创建准确且有用的数据集的重要性。 随着图像注释空间的增长,我们看到开源工具的可用性激增,这些工具使任何人都可以免费标记他们的图像并从强大的功能中受益…

Java代理设计模式--静态代理和动态代理

文章目录 代理设计模式概念代理模式的定义与特点代理模式的结构与实现代理模式的应用场景静态代理实例代理模式的扩展动态代理实现方式JDK动态代理与实例Cglib动态代理JDK动态代理与CGLIB对比 代理设计模式 概念 在有些情况下,一个客户不能或者不想直接访问另一个…

【中小型企业网络实战案例 二】配置网络互连互通

​【中小型企业网络实战案例 一】规划、需求和基本配置-CSDN博客 热门IT技术视频教程&#xff1a;https://xmws-it.blog.csdn.net/article/details/134398330?spm1001.2014.3001.5502 配置接入层交换机 1.以接入交换机ACC1为例&#xff0c;创建ACC1的业务VLAN 10和20。 <…

NFC物联网一次性口令认证解决方案

物联网是由无线传感器网络、射频识别(RadioFrequency Identificalion&#xff0c;RFID)网络、互联网等构成的一种复合型网络&#xff0c;具有部分终端设备体积小、存储和计算处理能力弱的特点。顾名思义&#xff0c;物联网就是“物物相连的互联网”&#xff0c;也就是说,物联网…

Visual Studio2022配置ReSharper C++ 常用设置

如需安装免费的可以在下面留言&#xff0c;看到即回复 文章目录 Visual Studio2022配置ReSharper C 常用设置配置Visual Studio2022&#xff0c;使其能够按回车进行补全配置ReSharper C 设置自动弹出配置ReSharper C 的快捷键ReSharper C 去掉注释拼写使用中文注释 如何关闭新版…

OAuth2.0 四种授权方式讲解

一、OAuth2.0 的理解 OAuth2是一个开放的授权标准&#xff0c;允许第三方应用程序以安全可控的方式访问受保护的资源&#xff0c;而无需用户将用户名和密码信息与第三方应用程序共享。OAuth2被广泛应用于现代Web和移动应用程序开发中&#xff0c;可以简化应用程序与资源服务器之…

在国内如何在速卖通上买东西(在速卖通aliexpress上付款)??

一、速卖通aliexpress上购物流程 1. 登录速卖通aliexpress网站&#xff0c;点击“注册”按钮。 2. 输入您的邮箱地址&#xff0c;然后单击“验证/联系”按钮&#xff1b; 3. 使用您的信用卡支付订单金额&#xff0c;点击获取信用卡 4. 在“我的订单管理器”中查看订单信息。 …

学习笔记14——Springboot以及SSMP项目

SpringBoot Springboot项目 IDEA2023只能创建jdk17和21的springboot项目解决 - 嘿嘿- - 博客园 (cnblogs.com)解决IntelliJ IDEA2022.03创建包时&#xff0c;包结构不自动分级显示的问题_idea建包不分级-CSDN博客IDEA调出maven项目窗口_idea maven窗口-CSDN博客 相比于spring的…

【2023下算法课设】Gray码的分治构造算法

Gray码是一个长度为2ⁿ的序列&#xff0c;序列中无相同元素&#xff0c;且每个元素都是长度为n位的二进制位串&#xff0c;相邻元素恰好只有1位不同。例如长度为2的格雷码为&#xff08;000,001,011,010,110,111,101,100&#xff09;&#xff0c;设计分治算法对任意的n值构造相…

如何使用设计模式来解决类与类之间调用过深的问题。

我们将使用责任链模式和装饰者模式的组合。 考虑一个简化的餐厅订单处理系统&#xff0c;其中包括服务员&#xff08;Waiter&#xff09;、厨师&#xff08;Chef&#xff09;和收银员&#xff08;Cashier&#xff09;。订单从服务员开始&#xff0c;然后传递给厨师&#xff0c…

python区块链简单模拟【05】

新增内容&#xff1a;构建去中心化网络 import socket #套接字&#xff0c;利用三元组【ip地址&#xff0c;协议&#xff0c;端口】可以进行网络间通信 import threading #线程 import pickle# 定义一个全局列表保存所有节点 NODE_LIST []class Node(threading.Thread…

目标检测-Two Stage-RCNN

文章目录 前言一、R-CNN的网络结构及步骤二、RCNN的创新点候选区域法特征提取-CNN网络 总结 前言 在前文&#xff1a;目标检测之序章-类别、必读论文和算法对比&#xff08;实时更新&#xff09;已经提到传统的目标检测算法的基本流程&#xff1a; 图像预处理 > 寻找候选区…

手术麻醉临床信息系统源码,客户端可以接入监护仪、麻醉机、呼吸机

一、手术麻醉临床信息管理系统介绍 1、手术麻醉临床信息管理系统是数字化手段应用于手术过程中的重要组成部分&#xff0c;用数字形式获取并存储手术相关信息&#xff0c;既便捷又高效。既然是管理系统&#xff0c;那就是一整套流程&#xff0c;管理患者手术、麻醉的申请、审批…

NVIDIA Jetson Nano 2GB 系列文章(9):调节 CSI 图像质量

NVIDIA英伟达中国 ​在本系列上一篇文章中&#xff0c;我们为大家展示了如何执行常见机器视觉应用。在本篇文章中&#xff0c;我们将带领大家调节 CSI 图像质量。 前面两篇文章在 Jetson Nano 2GB 上使用 CSI 摄像头做了几个实验&#xff0c;效果很不错&#xff0c;并且很容易…

分布式系统架构设计之分布式通信机制

二、分布式通信机制&#xff1a;保障系统正常运行基石 在分布式系统中&#xff0c;各个组件之间的通信是保障系统正常运行的基石&#xff0c;直接影响到系统的性能、可扩展性以及整体的可维护性。接下来我们就一起看看通信在分布式系统中的重要性&#xff0c;以及一些常用的技…

java八股 redis

Redis篇-01-redis开篇_哔哩哔哩_bilibili 1.缓存穿透 2.缓存击穿 逻辑过期里的互斥锁是为了保证只有一个线程去缓存重建 3.缓存雪崩 4.双写一致性 4.1要求一致性&#xff08;延迟双删/互斥锁&#xff09; 延迟双删无法保证强一致性 那么前两步删缓和更新数据库哪个先呢&#xf…

kubernetes(k8s) Yaml 文件详解

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