web 项目是 springboot+mybatis
里面有一个 listener 文件和 mapper 文件如下
listener 文件:
@Component
public class InitColorListener implements ApplicationListener {
@Resource(name="colorMapper")
private ColorMapper mapper;
...
}
mapper 文件
@Repository("colorMapper")
public interface ColorMapper {
List<Color> findAll();
...
}
项目编译启动,出现错误:
2017-09-14 11:42:40.298 WARN 3560 --- [ main] o.s.boot.SpringApplication : Error handling failed (Error creating bean with name 'InitColorListener': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'colorMapper' available)
2017-09-14 11:42:40.388 ERROR 3560 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter :
Disconnected from the target VM, address: '127.0.0.1:50302', transport: 'socket'
A component required a bean named 'colorMapper' that could not be found.
你可以不用这种方式来注入mapper接口,你可以通过扫包加mybatis.xml来进行sql语句查询实现,这种不方便,可以参考下下面这个
Spring Boot 集成MyBatis