Dal # 1 supporta Tomcat perché uno vuole usare 2 #?
spring-boot-starter-web
contiene spring-boot-starter-tomcat
. spring-boot-starter-tomcat
potrebbe essere utilizzato da solo se non è necessario il mvc di primavera (contenuto in spring-boot-starter-web
).
Ecco la gerarchia delle dipendenze di spring-boot-starter-web
:
Quali sono le differenze?
spring-boot-starter-web
contiene dipendenze di primavera web (tra cui spring-boot-starter-tomcat
):
spring-boot-starter
jackson
spring-core
spring-mvc
spring-boot-starter-tomcat
spring-boot-starter-tomcat
contiene tutto ciò che riguarda un gatto embdedded server:
core
el
logging
websocket
Che cosa succede se si desidera utilizzare Spring MVC senza il server Tomcat incorporato?
Basta escluderlo dalla dipendenza:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>