Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

在后端开发中,Maven是一个常用的构建工具和依赖管理工具。在Maven项目中,POM(Project Object Model)文件是一个重要的配置文件,用于定义项目的基本信息、依赖关系以及构建配置。本文将解释我们将会在POM文件中所引入的各项依赖内容。

引入maven后要更新一下,然后会自动下载拟引入的maven,时间可能会比较长,耐心等待

image-20230806105914372

1. 基本信息

在POM文件中,<groupId><artifactId><version>元素定义了项目的基本信息:

  • <groupId>:项目的组织或团队标识,通常使用反转的域名(类似Java包名)。
  • <artifactId>:项目的唯一标识符,通常是项目的名称。
  • <version>:项目的版本号。
1
2
3
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>

2. 依赖项

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?xml version="1.0" encoding="UTF-8"?>
<!-- Maven项目描述文件,定义了项目的基本信息和依赖 -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<!-- 指定模型版本 -->
<modelVersion>4.0.0</modelVersion>

<!-- 父依赖,基于Spring Boot的父项目 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.0</version>
<relativePath/> <!-- 从仓库查找父项目 -->
</parent>

<!-- 项目的基本信息 -->
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>

<!-- 定义属性 -->
<properties>
<java.version>1.8</java.version>
<tomcat.version>9.0.60</tomcat.version>
</properties>

<!-- 项目构建配置 -->
<build>
<plugins>
<!-- Spring Boot Maven插件,用于打包和运行Spring Boot应用 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
  1. Spring Boot Starter Parent 依赖:这是 Spring Boot 的父依赖,它提供了一系列默认的依赖版本,使您的项目能够快速集成 Spring Boot 框架。
    • org.springframework.boot:spring-boot-starter-parent:2.7.0
  2. 项目基本信息:在这部分中,定义了项目的基本信息,如项目的组织、唯一标识、版本、名称和描述等。
    • groupId:项目的组织或团队标识。
    • artifactId:项目的唯一标识符,通常是项目的名称。
    • version:项目的版本号。
    • name:项目的名称。
    • description:项目的描述。
  3. 属性定义:在这部分中,定义了项目中所使用的一些属性,如 Java 版本和 Tomcat 版本。
    • java.version:Java 版本。
    • tomcat.version:Tomcat 版本。

<dependencies>元素

<dependencies>元素下,列出了项目所依赖的库和框架。每个<dependency>元素表示一个依赖项,其中包括<groupId><artifactId><version>元素来指定依赖的组织、库和版本号。

Spring Boot Web 依赖

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

这个依赖用于启用 Spring Boot 的 Web 支持。它包含了许多在 Web 开发中常用的库和组件,包括 HTTP 请求处理、控制器、视图解析器等。您可以使用这个依赖来构建和处理 Web 请求以及创建 RESTful API。

Gson 依赖

1
2
3
4
5
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>

Gson 是 Google 提供的一个 Java 库,用于将 Java 对象和 JSON 数据进行相互转换。它使您能够在后端应用程序中轻松处理 JSON 格式的数据,例如解析 JSON 数据、将 Java 对象序列化为 JSON 等。

Lombok 依赖

1
2
3
4
5
6
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
<scope>provided</scope>
</dependency>

Lombok 是一个 Java 库,它通过注解自动为您生成 Java 类的代码,从而减少了冗余的样板代码。使用 Lombok,您可以轻松地为实体类生成 getter、setter、构造方法等。<scope>provided</scope> 表示这个依赖在编译时提供,但在运行时不会被包含在项目中。

MySQL 连接驱动依赖

1
2
3
4
5
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>

这个依赖包含了 MySQL 数据库的 Java 连接驱动,使得您可以在后端应用程序中连接、查询和操作 MySQL 数据库。

MyBatis-Plus 依赖

1
2
3
4
5
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>

MyBatis-Plus 是一个在 MyBatis 框架基础上的增强工具库。它提供了更多的便捷方法和功能,用于简化数据库操作,包括 CRUD 操作、分页查询等。

Spring Boot 内嵌 Tomcat 依赖

1
2
3
4
5
6
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<version>2.6.6</version>
<scope>compile</scope>
</dependency>

这个依赖包含了 Spring Boot 内嵌的 Tomcat 服务器。它允许您在开发和测试环境中直接运行 Web 应用程序,而无需单独安装和配置外部的 Web 服务器。

3. 总的pom文件配置

这是总的pom依赖,可以直接用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<?xml version="1.0" encoding="UTF-8"?>
<!-- Maven项目描述文件,定义了项目的基本信息和依赖 -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<!-- 指定模型版本 -->
<modelVersion>4.0.0</modelVersion>

<!-- 父依赖,基于Spring Boot的父项目 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.0</version>
<relativePath/> <!-- 从仓库查找父项目 -->
</parent>

<!-- 项目的基本信息 -->
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>

<!-- 定义属性 -->
<properties>
<java.version>1.8</java.version>
<tomcat.version>9.0.60</tomcat.version>
</properties>

<!-- 项目的依赖 -->
<dependencies>
<!-- Spring Boot Web依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!-- Gson依赖 -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>

<!-- Lombok依赖,用于简化Java类的开发 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
<scope>provided</scope>
</dependency>

<!-- MySQL连接驱动依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>

<!-- Spring Boot整合MyBatis-Plus的依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>

<!-- Spring Boot Web依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!-- Spring Boot内嵌Tomcat依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<version>2.6.6</version>
<scope>compile</scope>
</dependency>
</dependencies>

<!-- 项目构建配置 -->
<build>
<plugins>
<!-- Spring Boot Maven插件,用于打包和运行Spring Boot应用 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

4. 注意

由于各种依赖版本问题,可能最新的会有bug,所以最好选择稳定的去使用

可以在Maven Repository: Search/Browse/Explore (mvnrepository.com)网站中搜索你需要的依赖,选择版本后复制maven代码过来即可。

如还有其他问题建议csdn去搜索。

评论