Maven
Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建。
Maven的作用
依赖管理:方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题。
统一项目结构:提供标准、统一的项目结构。
项目构建:标准跨平台(Linux、Windows、MacOS)的自动化项目构建方式。
官网:http://maven.apache.org/
引入依赖,会先查找本地仓库有没有,没有在从远程仓库查找(私服 一般是公司内部有的),没有再从中央仓库查找,再从中央仓库下载到私服,再从私服中下载到本地仓库,再从本地仓库中下载。
Maven的安装
配置Maven环境(全局)
将你所配置的路径输入进去
选择jdk的版本
Maven坐标
2023版idea创建Maven项目
依赖管理
依赖:指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。
引入依赖
<dependencies>
<dependency>...</dependency>
<dependency>...</dependency>
</dependencies>
依赖传递
依赖范围
生命周期
Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一。
在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行。
Maven高级
分模块设计与开发
分模块设计:将项目按照功能拆分成若干个子模块,方便项目的管理维护、扩展,也方便模块间的相互调用,资源共享。
分模块设计需要先针对模块功能进行设计,再进行编码。不会先将工程开发完毕,然后进行拆分
继承与聚合
继承关系实现
版本锁定
在maven中,可以在父工程的pom文件中通过 <dependencyManagement> 来统一管理依赖版本。
子工程引入依赖时,无需指定 <version> 版本号,父工程统一管理。变更依赖版本,只需在父工程中统一变更。
把所有的版本聚到一起,方便查找修改
<dependencies> 是直接依赖,在父工程配置了依赖,子工程会直接继承下来。 <dependencyManagement> 是统一管理依赖版本,不会直接依赖,还需要在子工程中引入所需依赖(无需指定版本)
聚合
聚合:将多个模块组织成一个整体,同时进行项目的构建。
聚合工程 :一个不具有业务功能的“空”工程(有且仅有一个pom文件)
作用: 快速构建项目(无需根据依赖关系手动构建,直接在聚合工程上构建即可)
聚合工程中所包含的模块,在构建时,会自动根据模块间的依赖关系设置构建顺序,与聚合工程中模块的配置书写位置无关。
私服
私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,用来代理位于外部的中央仓库,用于解决团队内部的资源共享与资源同步问题。
私服在企业项目开发中,一个项目/公司,只需要一台即可(无需我们自己搭建,会使用即可)。
资源上传与下载
SpringBootWeb
Spring Boot 可以帮助我们非常快速的构建应用程序、简化开发、提高效率。
创建springboot工程:
创建springboot工程,并勾选web开发相关依赖。
注解
@RestController
@RestController的作用等同于@Controller + @ResponseBody @Controller注解,表明了这个类是一个控制器类
@RequestMapping
Spring-MVC
Spring MVC(Model-View-Controller)是Spring框架中的一个模块,用于构建基于MVC设计模式的Web应用程序。Spring MVC将应用程序分为三个主要部分:
Model:负责处理数据和业务逻辑。
View:负责展示数据。
Controller:负责处理用户请求并返回响应。
Spring MVC通过一系列的注解(如@Controller、@RequestMapping、@RequestParam等)简化了Web应用程序的开发。