SpringBoot多模块开发时,bean无法注入以及请求404问题
SpringBoot多模块开发时,bean无法注入以及请求404问题
首先说明一下情况,这是一个SpringBoot多模块的项目,用的是Maven项目管理工具。
因为分别把controller层和Service放在两个模块里,第一次这么写,所以踩坑了,还是个低级坑,我却解决了一个上午,甚至不知道原因只知道解决方案。
(我是真的菜)
如图:
在web模块里的controller里调用service模块里的service类,首先是一开始的bean无法注入
之后百度了一下,找到了解决方案。
其实坦白说这是我第一次用这个参数,扫描了之后就可以注入service的bean,但之后mapper又注入不了了,于是我如法炮制,扫描了一下mapper,之后又出现了更奇怪的,请求一直404。
我绞尽脑汁想尽各种办法,也没想明白为什么会404,dispatchServlet都在控制台打印了,结果就是一直404,于是我又去百度,解决了。
又让我在启动类上扫描一下。
成功了,进来了,我人傻了,这是我第一次扫描controller包,害,还是我太菜了,警以为戒吧。
后记。
找到了原因,SpringBoot默认只会扫描当前包下的类,所以另一个模块的类是不会进行扫描的,所以要在这里手动去扫描,扫描后就能成功注入了,至于404,可能是扫描了指定包后没有默认扫描了?我是这么想的,之后再去扫描一次就好了。