spring-boot-starter spring-boot-starter-web parent 区别
时间: 2024-08-14 19:06:38 浏览: 150
Spring Boot Starter 和 Spring Boot Starter Web 都是 Spring Boot 提供的一系列方便快速启动新项目的依赖集,但它们有以下区别:
1. **Spring Boot Starter**:这是一个基础的集合,包含了Spring框架的核心组件,如Bean自动配置、日志处理、JPA等。它为构建基本的Spring应用提供了一个起点,不包含Web开发相关的特性和工具。
2. **Spring Boot Starter Web**:这是在Spring Boot Starter的基础上添加了Web开发相关的功能,比如Spring MVC、Tomcat服务器、HTML模板引擎(Thymeleaf或Freemarker)、静态资源管理等。如果你的应用需要提供HTTP服务,那么这个starter非常适合。
当你在Maven或Gradle项目中选择`spring-boot-starter`作为父依赖,项目将只包含通用的功能;而选择`spring-boot-starter-web`作为父依赖,除了通用模块外,还额外包括了web开发的支持。
相关问题
spring-boot-starter-web spring-boot-starter-parent区别
Spring Boot Starter Web 和 Spring Boot Starter Parent 都是 Spring Boot 的启动器项目,但在项目构建中起到不同的作用:
1. **Spring Boot Starter Web**:
- 这是一个依赖包集合,它包含了一系列用于构建Web应用程序的组件,如Spring MVC、Thymeleaf模板引擎、Spring Security(如果启用的话)、静态资源处理、JSP支持等。当你选择这个starter,Spring Boot会自动配置并启用这些功能,使得快速搭建一个基础的RESTful API或Web应用变得更加简单。
2. **Spring Boot Starter Parent**:
- 实际上,这并不是一个直接使用的库,而是所谓的“父POM”(Parent Project Object Model)。它是所有其他Spring Boot Starter的基础,提供了一套共享的配置和版本管理规则。当你在项目的`pom.xml`中添加了`spring-boot-starter-parent`作为父模块,你的项目将继承其默认的依赖范围、插件配置、编码规范等。这对于保持整个项目的结构和依赖一致性非常有用。
简而言之,Spring Boot Starter Web 主要关注的是Web应用的功能集成,而Spring Boot Starter Parent 提供的是项目结构和构建方面的通用配置。如果你想要构建一个Web应用,那么通常只需要引入`spring-boot-starter-web`即可;而对于所有基于Spring Boot的项目来说,不管是否涉及Web,都可能会使用`spring-boot-starter-parent`来简化项目设置。
spring-boot-starter-parent 和spring-boot-starter-web的区别
spring-boot-starter-parent 是一个 Maven POM(Project Object Model),包含了 Spring Boot 项目常用的依赖版本,可以大幅度简化配置,而 spring-boot-starter-web 是一个 Spring Boot 的 Web 开发场景启动器,可以快速地开始一个 Spring Boot web 项目,包含了 Spring MVC、Spring Web 相关的依赖。
阅读全文