JavaEE进阶 --Spring Framework、Spring Boot和Spring MVC(1)

一.什么是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.⽆法访问此⽹站

相关推荐
小张小张爱学习21 小时前
Spring Boot 多线程并发入门教程:ThreadPoolTaskExecutor + CompletableFuture
java·spring boot·后端
摇滚侠1 天前
SpringBoot 内嵌 TongWeb 东方通替换 Tomcat
java·spring boot·spring
HeLiang71 天前
proguard 混淆 使用JDK17 的 springboot4 + JPA
java·spring boot·proguard
一 乐1 天前
网上订餐系统|基于springboot的网上订餐系统设计与实现(源码+数据库+文档)
java·数据库·spring boot·后端·论文·毕设·网上订餐系统
.Cnn1 天前
SpringBoot 文件上传与阿里云 OSS 集成
java·spring boot·后端·阿里云
hdsoft_huge1 天前
以2026世界杯晋级逻辑,生动拆解SpringBoot软件架构
java·spring boot·后端
utf8mb4安全女神1 天前
⽇志管理与深层防⽕墙
java·开发语言·spring boot
代码旅人ing1 天前
Redis+Spring+MyBatis + 微服务 + 消息队列核心知识点(面试高频题目合集)
redis·spring·mybatis·java-rabbitmq
Devin~Y1 天前
大厂Java面试实录:Spring Boot/Cloud、Kafka、Redis、K8s 可观测性 + RAG/Agent(小Y翻车版)
java·spring boot·redis·spring cloud·kafka·kubernetes·mybatis
希望永不加班1 天前
SpringBoot 服务注册与发现:Nacos/Consul/Eureka
java·spring boot·eureka·consul·java-consul