解决springboot的server.context-path不起作用的坑

最近做项目优化,一直没发现springboot的server.context-path不起作用问题,直到发现eclipse中server.context-path报警告,才发现有问题
解决springboot的server.context-path不起作用的坑_第1张图片
鼠标放上去提示替换成`

server.port=8080
spring.application.name=demo
server.servlet.context-path=/demo

server.servlet.context-path还是server.context-path?

做下验证,这个主要是控制服务访问路径,所以使用不同的配置查看下访问路径

server.context-path

server.port=8080
spring.application.name=demo
server.context-path=/demo

启动的时候发现问题路径是空的
在这里插入图片描述
http://127.0.0.1:8080/qryctrl
访问时,不需要使用demo路径,只是/路径下
解决springboot的server.context-path不起作用的坑_第2张图片
http://127.0.0.1:8080/demo/qryctrl
访问失败
解决springboot的server.context-path不起作用的坑_第3张图片
说明server.context-path没有起作用

server.servlet.context-path

server.port=8080
spring.application.name=demo
server.servlet.context-path=/demo

启动成功后,请求路径多了一层demo
在这里插入图片描述
这次请求路径添加demo应该是可以了
http://127.0.0.1:8080/demo/qryctrl
解决springboot的server.context-path不起作用的坑_第4张图片
请求成功
试试http://127.0.0.1:8080/qryctrl是否成功
解决springboot的server.context-path不起作用的坑_第5张图片
404,请求失败
说明server.context-path设置有问题,没有起作用

总结

查了很多资料,发现原来是跟springboot的版本有关系,server.context-path是在springboot的2.0.0版本以下起作用,server.servlet.context-path是springboot的2.0.0以上版本起作用,springboot迭代了版本问题,回到项目中,发现原来项目引用的springboot是2.0.3版本
解决springboot的server.context-path不起作用的坑_第6张图片

你可能感兴趣的:(spring,boot,java,spring)