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

相关推荐
专业程序开发源3 小时前
springboot欧缇蔓月子中心管理系统82697-计算机课程设计、毕业设计
java·spring boot·后端·python·spring·django·课程设计
莫逸风3 小时前
【毕设源码二期01】校园失物招领系统:从发布线索到核验交接
spring boot·毕业设计·课程设计·react
vx_Biye_Design4 小时前
django房屋租赁推荐系统78455-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·课程设计·express
小溪学编程5 小时前
将 Bean 放入 Spring 容器中的方式有哪些?
java·后端·spring
Thomas.Sir6 小时前
第2课:SpringBoot4.x 项目构建:Maven/Gradle配置详解,父工程与依赖管理
java·spring boot
我命由我123457 小时前
Python 开发 - Python 虚拟环境
运维·开发语言·后端·python·http·https·java-ee
Vegetable_xu7 小时前
Spring Bean 循环依赖:为什么有时能过、有时启动就挂
java·spring·mybatis
不像程序员的程序媛10 小时前
springboot支持的web容器
前端·spring boot·后端
开开心心_Every11 小时前
免费压缩软件WinRAR无弹窗、广告干扰
java·开发语言·前端·spring·智能手机·word·winrar
计算机毕设定制辅导-无忧学长11 小时前
《基于微信小程序的个人智能刷题助手的设计与实现》
java·spring boot·mysql·微信小程序·uniapp·个人智能刷题助手系统