一.什么是Spring Framework(spring)、Spring Boot、Spring MVC?
Spring Framework是官方的叫法,平日里我们叫做Spring,他是基础核心框架,其中有很多个模块,而Spring MVC是其中的一个Web层模块,用来处理HTTP请求,基于这个核心基础框架,又有了Spring家族,而Spring Boot是其中的一个独立项目,目的是为了快速开发,它可以集成其他Spring家族,如Spring Data、Spring Cloud等.
二.Maven
1.Maven的主要功能
1).项目管理
Maven提供了标准的,跨平台(Linux,Windows,MacOS等)的⾃动化项⽬构建⽅式 当我们开发了⼀个项⽬之后,代码需要经过编译,测试,打包,发布等流程,每次代码的修改,都需要经过 这些流程,如果代码反复调试修改,这个流程就需要反复进⾏,就显得特别⿇烦,,⽽Maven给我们提供了 ⼀套简单的命令来完成项⽬的构建.如打包操作,可以打包成jar包和war包。jar包和war包都是⼀种压缩⽂件 jar包就是把开发⼈员已经写好的⼀些代码进⾏打包. 打好的jar包就可以引⼊到其他项⽬中,也可以直 接使⽤这些jar包中的类和属性.另外也可以打成可执⾏jar包,这样的包就可以通过java-jar命令来执 ⾏ war包可以理解为是⼀个web项⽬,⾥⾯是项⽬的所有东西,通常⽤于⽹站

2).依赖管理
Maven有pom.xml文件,是Maven的配置文件,描述项目的各种信息,通过在pom.xml依赖声明来下载对应的jar包,Maven的依赖管理 ,其核心功能 是管理这种"引用关系" (解析、计算、解决冲突)--逻辑层(知道要下载那些包等),而其具体工作方式 就是去"管理具体的jar包"(下载、存储、提供)--物理层(落实)。
3).依赖传递
早期我们没有使⽤maven时,向项⽬中添加依赖的jar包,需要把所有的jar包都复制到项⽬⼯程下. ⽐如A依赖B,B依赖C, 那么A项⽬引⼊B的同时,也需要引⼊C,如果我们⼿动管理这个依赖,这个过程 就会⽐较⿇烦,我们需要知道每个库都依赖哪些库,以及这些依赖之间的版本是如何关联的.但使⽤maven的话,就可以避免管理所需依赖的关系。我们只需要在pom⽂件中,定义直接依赖就可以 了,由于maven的依赖具有传递性,所以会⾃动把所依赖的其他jar包也⼀起导⼊

4).依赖排除
当前阶段我们需要依赖的库并不多,但随着项⽬的越来越复杂,库之间的依赖关系也会变得越来越复杂. 如上图中,如果项⽬A不需要JarB,也可以通过排除依赖的⽅式来实现。可以在pom.xml输入 <exclusions>
<exclusion>
<artifactId>项目id</artifactId>
<groupId>组织id</groupId>
<version>版本号</version>
</exclusion>
</exclusions>
</dependency>来消除对对应jar包的依赖,也可以下载Maven Helper插件来删除。
5).依赖调解,可选依赖
当项⽬中的依赖存在依赖冲突时,例如存在这样的依赖:
A->B->C->X(1.0)
A->D->X(2.0)
Maven会采⽤最短路径优先的原则去选择依赖,这⾥2的依赖路径更短,所以会选择X(2.0),当然我们 也可以选择指定某个依赖的版本,即在pom.xml文件上依赖声明想要的版本。
2.本地仓库和中央仓库
本地仓库是在自己的电脑上,当在pom.xml声明依赖时,会从本地仓库查找是否有,有的话就会直接从引用,如果没有会从中央仓库下载到本地仓库。
二.创建Spring Boot项目
在IDEA专业版可以直接可以创建Spring Boot项目,但社区版不行,得控制好版本和下载Spring Boot Helper插件。


三.启动Spring Boot项目
四.Web服务器
浏览器和服务器两端进⾏数据交互,使⽤的就是HTTP协议。前⾯我们已经学习了HTTP协议,知道了HTTP协议就是HTTP客⼾端和HTTP服务器之间的交互数据 的格式. Web服务器就是对HTTP协议进⾏封装,程序员不需要直接对协议进⾏操作(⾃⼰写代码去解析http协议 规则),让Web开发更加便捷,所以Web服务器也被称为WWW服务器, HTTP服务器,主要功能是提供⽹ 上信息浏览服务. 常⻅的Web服务器有:Apache,Nginx,IIS,Tomcat,Jboss等 SpringBoot 内置了Tomcat服务器,⽆需配置即可直接运⾏。Tocmat默认端⼝号是8080,所以我们程序访问时的端⼝号也是8080。

五.HTTP状态码
1.404

2.500

3.⽆法访问此⽹站

