【Spring】Spring Boot入门(1)

news2024/12/26 22:27:24

本系列共涉及4个框架:Sping,SpringBoot,Spring MVC,Mybatis。

博客涉及框架的重要知识点,根据序号学习即可。

目录

1、什么是Spring

1.1 什么是Spring

1.2 Spring与Spring Boot(Spring  脚手架)的关系

2、了解Maven

2.1 什么是Maven 

2.2 Maven核心功能

2.3 Maven仓库

2.4 Maven配置国内源

3、创建第一个Spring Boot项目

3.1 使用idea创建

3.2 使用网页版创建

1、什么是Spring

1.1 什么是Spring

在学习SpringBoot之前, 我们先来认识⼀下Spring 。
Spring官⽅ Spring | Home 】: Spring使Java编程对每个人来说都更快、更容易、更安全。Spring对速度、简单性和生产力的关注使其成为世界上最流行的Java框架。

1.2 Spring与Spring Boot(Spring  脚手架)的关系

Spring就是一个框架,是为了简化Java开发的,而Spring Boot则是为了简化Spring程序开发的。因为以前项⽬都是基于Spring Framework来进⾏开发的, 但是Spring Framework存在配置多, ⼊⻔难的问 题, Spring 也意识到了这个问题, 为了简化开发者的使⽤, 从⽽创造性的推出SpringBoot。 总之, Spring Boot 的诞⽣是为了简化 Spring 程序开发的。




2、了解Maven

2.1 什么是Maven 

        1、官方定义:Apache Maven是一个软件项目管理和理解工具。基于项目对象模型(POM)的概念,Maven可以从一个中心信息片段管理项目的构建、报告和文档。

        2、简单来说,Maven就是一个项目管理工具,通过pom.xml文件管理与配置项目所需要的依赖,不必手动添加依赖(jar包)

         3、IDEA已经集成Maven了,直接使用即可。创建项目的时候选择Maven,项目会自动生成pom.xml文件,这个文件就是管理jar包的

2.2 Maven核心功能

        1、项目创建

        (1)选择Maven创建项目完成时,右侧点击图标m将会展开maven一系列操作,最左上角的刷新图标,是每一次使用或更改pom.xml时需要点击以便加载好需要使用的jar包

        (2)双击package命令,将会完成打包操作。打包就是把所有的class⽂件, 全部放在⼀起, 打成jar包或者war包。

        (3)之前一直在说jar包,到底什么是jar包呢?war包又是啥?jar包和war包都是⼀种压缩⽂件。jar包就是把开发⼈员已经写好的⼀些代码进行打包引⼊到其他项目中,就可以使⽤这些jar包中的类和属性.。另外也可以打成可执行jar包, 这样的包就可以通过java -jar命令来执 行 。war包可以理解为是⼀个web项目,里面是项目的所有东西, 通常用于网站.

        2、依赖管理

        (1)依赖是指当前项目运行所需要的jar包

        (2)坐标:唯一用来识别一个jar包的

        (3)仓库:jar包下载的地方,本质是一个目录

        (4)双击pom.xml文件,<dependency>里就是依赖的坐标,根据坐标去仓库中下载jar包

2.3 Maven仓库

Maven仓库分为两⼤类: 本地仓库和远程仓库。 其中远程仓库⼜分为中央仓库, 私服和其他公共库

        1、本地仓库

        (1)本地仓库: 自己计算机上的⼀个⽬录(⽤来存储jar包)
        (2)当项⽬中引⼊对应依赖jar包后,⾸先会查找本地仓库中是否有对应的jar包 。如果有,则在项⽬直接引⽤ ; 如果没有,则去中央仓库中下载对应的jar包到本地仓库
        (3)本地仓库地址可以通过Maven配置查看:

         2、中央仓库

        (1)中央仓库: maven 软件中内置⼀个远程仓库地址,就是中央仓库,服务于整个互联⽹. 由 Maven 团队维护,全球唯⼀。
        (2)仓库地址:https://repo1.maven.org/maven2/
         (3)通过https://mvnrepository.com这个⽹站来查询依赖并找到坐标下载jar包,以mysql为例
      

        3、私服(私有服务器)

         (1)私服: ⼀般是由公司团队搭建的私有仓库.。往往需要⼀定权限才能使用。
        (2)有了私服之后, Maven依赖下载的顺序:
  • 先从本地仓库获取, 本地仓库存在, 则直接返回
  • 如果本地仓库没有, 就从私服请求, 私服存在该资源, 就直接返回
  • 如果私服上不存在该资源,则从中央仓库下载, 中央仓库不存在, 就报错了...
  • 如果中央仓库中存在, 就先缓存在私服上之后,再缓存到本地仓库⾥, 再为Maven的下载请求提供服务

2.4 Maven配置国内源

1、因为中央仓库在国外, 所以下载起来会⽐较慢, 所以咱们选择借助国内⼀些公开的远程仓库来下载资源

2、接下来介绍, 如何设置国内源

(1)打开idea--->file--->setting,找到本地settings.xml在哪里

   (2)Maven 仓库默认在国外,国内使⽤时会⽐较慢,我们可以更换为阿⾥云 的仓库

编辑settings.xml, 在 mirrors 节点上,添加内容如下:
<mirror>
 <id>aliyunmaven</id>
 <mirrorOf>central</mirrorOf>
 <name>阿⾥云公共仓库</name>
 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
 </mirror>



3、创建第一个Spring Boot项目

当前使用的版本是专业版的2023.3.7专业版【如果是学生党的话大家可以申请专业版的idea,更方便,因为社区版创建Spring Boot项目会收取插件费用($15/year)】

3.1 使用idea创建

JDK 17 版本创建,目前不支持选择java 8。

选择Spring  Boot版本

添加依赖,目前是开发网页,就选择一个Spring Web的依赖就行,点击create

记得点maven的刷新按钮,加载为maven项目

目录介绍

3.2 使用网页版创建

https://start.spring.io/

记得添加依赖

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

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

相关文章

好用的宠物浮毛清理神器,希喂、IAM、范罗士宠物空气净化器大揭秘

最近宠物空气净化器在养宠家庭中的讨论度一直很高&#xff0c;产品主打可以吸附宠物浮毛和异味的功能。养了三只小猫的我对此也很感兴趣&#xff0c;准备入手一台试试。可我没有想到宠物空气净化器的品牌有这么多&#xff0c;功课都做了好久。看了好几天&#xff0c;最后在希喂…

【Python报错已解决】`SyntaxError: can‘t assign to function call`

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 引言&#xff1a;一、问题描述&#xff1a;1.1 报错示例&#xff1a;1.2 报错分析&#xff1a;1.3 解决思路&#xff…

Quartz任务调度框架

文章目录 前言一、介绍二、使用步骤1.创建maven工程&#xff0c;添加依赖2.创建任务3.启动任务 三、基本实现原理1. Scheduler任务调度器2. Triggers触发器2.1 SimpleTrigger2.2 CronTirgger 3. Misfire策略4 任务Job4.1 Job4.2 JobDetail4.3 JobDataMap 前言 最近跟的一个系统…

洞见数据价值,激活组织活力,让决策更精准的智慧地产开源了

智慧地产视觉监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本。通过计算机视觉和…

Sql查询优化--索引设计与sql优化(包含慢查询定位+explain解释计划+左匹配原则+索引失效)

本文介绍了数据库查询的索引优化方法&#xff0c;依次介绍了慢查询语句定位方法、索引设计与sql语句优化方法&#xff0c;并介绍了左匹配原则和索引失效的场景&#xff0c;最后介绍了explain执行计划要怎么看以调整检验索引设计是否生效和效率情况&#xff0c;创新介绍了如何以…

AWS api数据信息获取(boto3)

GitHub - starsliao/TenSunS: &#x1f984;后羿 - TenSunS(原ConsulManager)&#xff1a;基于Consul的运维平台&#xff1a;更优雅的Consul管理UI&多云与自建ECS/MySQL/Redis同步Prometheus/JumpServer&ECS/MySQL/Redis云监控指标采集&Blackbox站点监控维护&漏…

4家国产数据库上市公司:最好的盈利1个亿,最惨亏8000w

目前国产数据库xc目录中大概有11家公司&#xff0c;其中多家公司已经上市了&#xff0c;且公布了最新的半年报&#xff01; 这里尝试分析一下几家国产数据库上市公司的发展潜力和情况。 达梦数据库 达梦数据库作为国产数据库第一股&#xff0c;业绩增长还是一如既往的猛&…

【零知识证明】通读Tornado Cash白皮书(并演示)

1 Protocol description 协议描述有以下功能&#xff1a; 1.insert&#xff1a;向智能合约中存入资金&#xff0c;通过固定金额的单笔交易完成&#xff0c;金额由N表示&#xff08;演示时用1 ETH&#xff09; 2.remove&#xff1a;从智能合约中提取资金&#xff0c;交易由收…

ncnn之yolov5(7.0版本)目标检测pnnx部署

一、pnxx介绍与使用 pnnx安装与使用参考&#xff1a; https://github.com/pnnx/pnnxhttps://github.com/Tencent/ncnn/wiki/use-ncnn-with-pytorch-or-onnxhttps://github.com/Tencent/ncnn/tree/master/tools/pnnx 支持python的首选pip&#xff0c;否则就源码编译。 pip3 …

Webpack打包常见问题及优化策略

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介Webpack打包常见问题及优化策略1. 引言2. Webpack打包常见问题2.1 打包时间过长问题描述主要原因 2.2 打包体积过大问题描述主要原因 2.3 依赖包版本冲突问题描述主要原因 2.4 动态导入和代码拆分问题问题描述主要原因 2.5 文件路径…

C++系列-继承方式

继承方式 继承的语法继承方式&#xff1a;继承方式的特点继承方式的举例 继承可以减少重复的代码。继承允许我们依据另一个类来定义一个类&#xff0c;这使得创建和维护一个应用程序变得更容易。基类父类&#xff0c;派生类子类&#xff0c;派生类是在继承了基类的部分成员基础…

编程效率进阶:打造你专属的 Git 别名与 PyCharm 完美结合

在日常开发中&#xff0c;Git 是我们不可或缺的工具。掌握常用 Git 命令可以帮助我们更高效地进行版本控制&#xff0c;但随着命令的复杂性增加&#xff0c;记住所有命令变得困难。这时&#xff0c;Git 别名的设置就显得尤为重要。此外&#xff0c;许多开发者使用 PyCharm 作为…

【Android自定义控件】Kotlin实现滚动效果的数字加减控件

前言 因业务上的需要&#xff0c;在APP中点餐时要有商品数目增减操作&#xff0c;数目增减的过程中有翻动的动画效果展现。在Android中有多种方式可以实现&#xff0c;本篇文章记录通过自定义View结合控件的平移动画相结合来实现此需求。 需求分析 根据上图分析控件的实现过程以…

Pillow:一个强大的图像处理Python库

我是东哥&#xff0c;一个热衷于探索Python世界的自媒体人。今天&#xff0c;我要向大家介绍一个在Python图像处理领域中不可或缺的库——Pillow。如果你对图像处理感兴趣&#xff0c;或者正在寻找一个简单易用的库来处理图片&#xff0c;那么Pillow绝对是你的不二之选。 基本…

【前端】代码Git提交规范之限制非规范化提交信息

需求背景 在我们目前的前端项目中&#xff0c;我们采用 git 作为版本控制工具。使用 git 管理项目意味着我们经常需要提交代码。当我们执行 git commit -m "描述信息" 命令时&#xff0c;我们被要求提供一个描述信息。现在使用约定式规范提交&#xff0c;和Commitiz…

用纯 div 实现一个选中和未选中状态

在现代网页设计中&#xff0c;利用 div 元素自定义样式&#xff0c;可以让界面更具有吸引力。通过一些简单的 CSS 样式和布局技巧&#xff0c;可以轻松实现交互自然的选中和未选中效果&#xff0c;而不需要依赖传统的 input 元素。 举个 &#x1f330; HTML <body><…

金融POS三层密钥体系 银行卡网络安全系统

银行卡网络安全系统的三层密钥体系 银行卡网络安全系统的三层密钥体系为金融POS系统提供了高度安全的密钥管理。这个体系从上到下分为三层&#xff1a;系统密钥、主密钥、和工作密钥。每一层密钥都负责保护下一层密钥的安全性&#xff0c;确保系统整体的安全性。 三层密钥体系…

[图解]强化自测题解析-总纲(一)01 这属于什么工作流

1 00:00:00,680 --> 00:00:05,350 今天我们开始来解析一些强化自测题 1 00:00:01,100 --> 00:00:03,980 因为现在强化自测题本身 2 00:00:05,010 --> 00:00:06,720 我们出得已经比较多了 3 00:00:07,700 --> 00:00:12,570 自测题是用来测试我们的开发人员 4 00…

华为OD机试真题 - 字符串排序(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、…

QT教程-十六,QT中如何解析JSON

一&#xff0c;对json的初步认识 &#xff08;这里我们主要说明最常用的&#xff0c;以一个宏观的概念来说一下&#xff09;&#xff0c;json是一种数据格式&#xff0c;作用就是便于传递信息&#xff0c;我们可以按其结构和对应关系&#xff0c;拿到我们想要的数据。其主要结构…