当前位置:   article > 正文

SpringBoot 影响URL访问路径的RequestMapping写法与context-path设置_springboot requestmapping("/{classname}”)会与request

springboot requestmapping("/{classname}”)会与requestmapping("/{classname1}/

上周尝试把SpringBoot项目以WAR包的形式部署到Tomcat, 在访问路径这个问题上遇到了问题并折腾了很久。问题解决之后,总结经验如下:

1. 类中的路径映射可以写得简单一点:(项目名是detect-mgr)

启动类的路径就用“/”,不用加项目名

  1. @RequestMapping("/")
  2. public class WebappApplication extends SpringBootServletInitializer {
  3. //...
  4. }

其他Controller中的路径就直接写“/xxx”, 不用加项目名

  1. @RequestMapping("/login")
  2. public class LoginCtrl {
  3. //...
  4. }

2. 上述代码中的路径映射没有放项目名,访问的时候url就只能直接跟在端口后面。如果放项目名,则提示404.

http://localhost:8080/login

而更合理的url应该是在路径中体现项目名的:

http://localhost:8080/detect-mgr/login

为了把项目名放入url中使其看上去更合理,需要在application.properties文件中添加context-path设置:

SpringBoot 1.x的写法:server.context-path=/detect-mgr
SpringBoot 2.x的写法:server.servlet.context-path=/detect-mgr

参考:https://blog.csdn.net/Monster_WangXiaotu/article/details/104834339/

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/194547?site
推荐阅读
相关标签
  

闽ICP备14008679号