springboot访问请求404的原因及解决办法
是记录,可能出现错误
可能出现的原因
1.你请求的URL路径不对,比如说你请求的路径是/usr/list,GET方法,但是你UserController上面的RequestMapping是这个样子:@RequestMapping(“user”),有可能哈
2.前端的请求时GET方法,后端对应的处理函数的方法是非GET方法
3.Controller和RestController注解混用了,两个中删除一个试试
4.访问的是静态资源,那么查看是否配置好了静态资源,就是把静态资源放到Resources下面的static文件夹中,也可以通过配置类来自定义存放路径
下面是通过配置类的方式,来配置静态资源存放的路径
我的静态资源是直接放在Resources下面的,新建一个类,类名随意
继承WebMvcConfigurationSupport重写addResourceHandlers方法
在类上面加上@Configuration注解
@Configuration @Slf4j public class WebMvcConfig extends WebMvcConfigurationSupport { /** * 配置静态资源映射 * * @param registry **/ @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { log.info("开始进行静态资源映射"); //将路径中包含backend的请求映射到backend文件夹下 //这句话的意思是,只要请求的是/backend下面的文件都映射到Resources下面的backend文件夹下面,classpath: registry.addResourceHandler("/backend/**").addResourceLocations("classpath:/backend/"); //上同 registry.addResourceHandler("/front/**").addResourceLocations("classpath:/front/"); } }
5.你的Controller类没有被扫描到,这种情况一般是启动类在一个包里面
解决办法:
1、把你的启动类从包里面拿出来,放到外面,如图所示
2、用和MapperScan和scanBasePackages来指明需要扫描的包
如图所示
3、项目中有多个SpringBootServletInitializer子类
此类问题表现是,项目按模块划分,多个模块内包含Controller。在开发调试阶段正常,单独运行每个模块也正常;使用tomcat部署后,总会随机出现一些模块的Controller访问不了的情况。
这种情况,多是因为每个模块都创建了SpringBootServletInitailizer子类。
解决办法就是只保留入口模块的SpringBootServletInitialzer子类即可
补充:
若是线上部署阶段排错思路
1.确定资源确实是存在的
2.随机测试几个接口,看看是否都是404。
- 如果都是404,很可能是nginx配置错误
- 如果部分404,且是按模块404,查看项目中是否有多个SpringBootServletInitializer子类
总结
到此这篇关于springboot访问请求404的原因及解决办法的文章就介绍到这了,更多相关springboot访问请求404内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
基于@RequestBody和@ResponseBody及Stringify()的作用说明
这篇文章主要介绍了基于@RequestBody和@ResponseBody及Stringify()的作用说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06新建springboot项目时,entityManagerFactory报错的解决
这篇文章主要介绍了新建springboot项目时,entityManagerFactory报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-01-01Java中的线程同步与ThreadLocal无锁化线程封闭实现
这篇文章主要介绍了Java中的线程同步与ThreadLocal无锁化线程封闭实现,Synchronized关键字与ThreadLocal变量的使用是Java中线程控制的基础,需要的朋友可以参考下2016-03-03springboot结合maven配置不同环境的profile方式
这篇文章主要介绍了springboot结合maven配置不同环境的profile方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-01-01
最新评论