SpringBoot的Context Path与 Servlet Path比较 - baeldung


Servlet Path为应用程序提供了一个单一的入口点。而Context Path上下文路径定义了最终用户将访问应用程序的 URL。
只有Servlet Path:http://localhost:8080/baeldung/
两者结合Servlet Path+Context Path:http://localhost:8080/baeldung/demo/
 
Servlet 路径
servlet路径(Servlet Path)表示主DispatcherServlet的路径。所述的DispatcherServlet是一个实际的Servlet,并且它从继承HttpSerlvet基类。
在早期版本的 Boot 中,该属性位于ServerProperties类中,称为server.servlet-path =/
从 2.1.x 开始,此属性移至WebMvcProperties类并重命名为spring.mvc.servlet.path =/。
让我们修改servlet路径:
spring.mvc.servlet.path=/baeldung
当我们更新 servlet 路径时,它也会影响应用程序的上下文。因此,经过这些修改后,应用程序上下文路径将变为:
http://localhost:8080/baeldung/

Context Path上下文路径
简而言之,上下文路径是用于访问 Web 应用程序的名称。它是应用程序的根。默认情况下,Spring Boot 提供根上下文路径(“/”)上的内容。
因此,任何具有默认配置的引导应用程序都可以通过以下方式访问:
http://localhost:8080/
但是,在某些情况下,我们可能希望更改应用程序的上下文。有多种方法可以配置上下文路径,application.properties就是其中之一。该文件位于src/main/resources文件夹下。
server.servlet.context-path=/demo
因此,应用程序主页将是:
http://localhost:8080/demo
 
两者结合
当配置application.properties:

spring.mvc.servlet.path=/baeldung
server.servlet.context-path=/demo

因此,经过这些修改后,应用程序上下文路径将变为:
http://localhost:8080/baeldung/demo