springboot+mybatis-plus出现A component required a bean of type ‘XXX‘ that could not be found错误解决![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/38070b504d442882cc1cea7cbca34079.png)
问题很简单该接口没有受到spring的管理,进入对应的类,发现少了@Service注解
加上@Service,再次启动,之前的错误就没有了。
顺便在这里说说@Service注解作用:
1、 其getBean的默认名称是类名(头字母小写),可以@Service(“xxxx”)这样来指定,
2、其定义的bean默认是单例的,可以使用@Service(“beanName”) @Scope(“prototype”)来改变。
3、可以通过@PostConstruct和@PreDestroy指定初始化方法和销毁方法(方法名任意)
@Service(“baseCacheService”)
public class BaseCacheServiceImpl implements BaseCacheService{
}
@Service
public class ShortUrlServiceImpl implements ShortUrlService {
}
备注:
1、过滤器中可以通过如下方式获取bean
BeanFactory factory = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getServletContext());
ShortUrlService shortUrlService = (ShortUrlService) factory.getBean("shortUrlServiceImpl");
BaseCacheService baseCacheService = (BaseCacheService) factory.getBean("baseCacheService");