首页 > 技术文章 > Springboot的 server.context-path 和 server.servlet-path 的区别

xiaomaomao 2020-11-26 09:08 原文

首先说一下 server.context-path ,它代表的是应用上下文根

server.context-path=/xiaomaomao

例如我在 application.properties 中配置了 server.context-path=/xiaomaomao ,那么我访问服务端资源的时候就必须加上 /xiaomaomao

例如:你要访问到这个 Controller 中的 /hello 映射,那么你浏览器发起的请求就要是 http://localhost:8080/xiaomaomao/hello

@Controller
public class SpringbootErrorController {
    @RequestMapping("/hello")
    public void error01() {
        System.out.println("hello world");
    }
}

而对于 server.servlet-path 来说,它代表的是 DispatcherServlet 的拦截路径

server.servlet-path=/xiaomaomao

这里配置的 DispatcherServlet 拦截路径就是 /xiaomaomao,但是我们配置 DispatcherServlet 都是使用默认的路径 / (拦截所有请求,不拦截 jsp)

推荐阅读