spring框架maven依赖pom配置教程
目录
- 一、基础 Spring 依赖配置
- 1. Spring Framework 核心依赖
- 2. Spring Boot Starter 父项目 (推荐)
- 二、常用模块依赖
- 1. Web 开发
- 2. 数据访问
- 3. 安全框架
- 4. 测试支持
- 三、完整 pom.XML 示例
- 四、Spring Cloud 依赖配置
- 五、版本管理建议
- 六、常见问题解决
- 总结
以下是 Spring 框架核心模块和常用扩展的 Maven 依赖配置,我会分类介绍并提供完整的 pom.xml 示例。
一、基础 Spring 依赖配置
1. Spring Framework 核心依赖
<!-- Spring Framework 核心 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.3.23</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.23</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>5.3.23</version> </dependency>
2. Spring Boot Starter 父项目 (推荐)
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.5</version> <relativePath/> </parent>
使用 Spring Boot Starter 可以简化依赖php管理,自动处理版本兼容性。
二、常用模块依赖
1. Web 开发
<!-- Spring MVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.23</version> </dependency> <!-- 或使用 Spring Boot Starter Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
2. 数据访问
<!-- JDBC 支持 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc<编程客栈/artifactId> <version>5.3.23</version> </dependency> <!-- JPA 支持 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <!-- MyBATis 整合 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.2</version> </dependency>
3. 安全框架
<!-- Spring Security --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
4. 测试支持
<!-- Spring 测试框架 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
三、完整 pom.xml 示例
<?xml version="1.0" encoding="UTF-8"?> <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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.5</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>11</java.version> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> </properties> <dependencies> <!-- Web 支持 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- 数据访问 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <!-- 模板引擎 (可选) --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!-- 安全框架 (可选) --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <!-- 开发工具 (可选) --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <!-- 测试支持 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId&androidgt;spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
四、Spring Cloud 依赖配置
如果需要使用 Spring Cloud,可以添加以下配置:
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>2021.0.5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Spring Cloud 组件示例 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> </dependencies>
五、版本管理建议
- 使用 Spring Boot Starter Parentjavascript:自动管理依赖版本
- 查看兼容版本:参考 Spring 官方文档
- 自定义版本:如果需要覆盖默认版本,可以在
<properties>
中指定
<properties> <spring.version>5.3.23</spring.version> <spring-boot.version>2.7.5</spring-boot.version> </properties>
六、常见问题解决
- 依赖冲突:使用
mvn dependency:tree
查看依赖android树 - 版本不兼容:参考官方发布的版本兼容矩阵
- 缺少依赖:检查是否添加了正确的 starter 或手动添加所需模块
通过合理配置这些依赖,可以构建出功能完善的 Spring 应用程序。根据项目需求选择合适的模块即可。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论