
解决"Could not autowire. No beans of 'xxx' type found."
一、问题陈述
Could not autowire. No beans of 'xxx' type found.
一般这种状况会在
controller
层 调用service
层的interface
接口 时出现这种问题
一般展示样子是这样的:
二、解决问题
在 service
层的 interface
接口 中,给这个接口 添加注解 @Repository
三、拓展
@Repository
是 Spring 框架中最基本的注解之一,它用于将一个类标记为 Spring 容器中的一个组件。通常情况下,@Repository
注解用于标注那些不方便归类的类,比如工具类、常量类等。通过将这些类标记为组件,Spring 容器会自动扫描这些类,并将它们实例化并加入到容器中,从而方便在其他地方进行依赖注入。
除了 @Repository
注解外,Spring 还提供了许多其他的注解,如 @Service
、@Component
、@Controller
、@RestController
等,它们都是 @Component
注解的派生注解,用于表示不同类型的组件。这些注解的作用和用法与 @Repository
注解基本相同,只是在语义上有所区别,更加符合不同类型的组件的特点。
需要注意的是,@Repository
注解只是一个标记注解,它本身并不提供任何功能。如果需要将一个类标记为组件,并让 Spring 容器自动扫描并实例化它,还需要在配置类中使用 @ComponentScan
注解来指定要扫描的包路径。
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Eternal Night
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果