SpringBoot多模块开发时,bean无法注入以及请求404问题

本文介绍了在SpringBoot多模块项目中遇到的bean无法注入和HTTP请求404问题。作者通过将controller层和服务层分别放在不同模块,首次尝试时遇到bean注入失败和Mapper无法注入的问题。通过修改配置,添加扫描包的设置,解决了bean注入问题。然而,随后又出现请求404错误,经过搜索资料和尝试,发现在启动类中再次扫描controller包后,问题得到解决。总结原因是SpringBoot默认只扫描当前包下类,需手动指定其他模块的包进行扫描。

SpringBoot多模块开发时,bean无法注入以及请求404问题

首先说明一下情况,这是一个SpringBoot多模块的项目,用的是Maven项目管理工具。

因为分别把controller层和Service放在两个模块里,第一次这么写,所以踩坑了,还是个低级坑,我却解决了一个上午,甚至不知道原因只知道解决方案。

(我是真的菜)

如图:

在这里插入图片描述

在web模块里的controller里调用service模块里的service类,首先是一开始的bean无法注入

在这里插入图片描述

之后百度了一下,找到了解决方案。

在这里插入图片描述

其实坦白说这是我第一次用这个参数,扫描了之后就可以注入service的bean,但之后mapper又注入不了了,于是我如法炮制,扫描了一下mapper,之后又出现了更奇怪的,请求一直404。

在这里插入图片描述

我绞尽脑汁想尽各种办法,也没想明白为什么会404,dispatchServlet都在控制台打印了,结果就是一直404,于是我又去百度,解决了。

又让我在启动类上扫描一下。

在这里插入图片描述

成功了,进来了,我人傻了,这是我第一次扫描controller包,害,还是我太菜了,警以为戒吧。

后记。

找到了原因,SpringBoot默认只会扫描当前包下的类,所以另一个模块的类是不会进行扫描的,所以要在这里手动去扫描,扫描后就能成功注入了,至于404,可能是扫描了指定包后没有默认扫描了?我是这么想的,之后再去扫描一次就好了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值