2017-11-09 17:03:50.579 WARN 12020 --- [ restartedMain] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'indexController': Unsatisfied dependency expressed through field 'userinfoService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userinfoService': Unsatisfied dependency expressed through field 'mapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.*.users.mapper.UserinfoMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
2017-11-09 17:03:50.583 INFO 12020 --- [ restartedMain] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
2017-11-09 17:03:50.606 INFO 12020 --- [ restartedMain] utoConfigurationReportLoggingInitializer :
Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-11-09 17:03:50.699 ERROR 12020 --- [ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter :
***************************
APPLICATION FAILED TO START
***************************
Description:
Field mapper in com.*.users.service.UserinfoService required a bean of type 'com.*.users.mapper.UserinfoMapper' that could not be found.
Action:
Consider defining a bean of type 'com.*.users.mapper.UserinfoMapper' in your configuration.
这个错误是报的mapper
一想,我没对mybatis进行配置,也没指定mapper的位置。以下我用两种方式来写出这个问题的解决方案
一、
@EnableWebMvc
@SpringBootApplication
@ServletComponentScan
@MapperScan("com.****.mapper")//这个一定要写,不然就会报以上的错误
public class UsersApplication extends WebMvcConfigurerAdapter implements CommandLineRunner {
Logger logger = Logger.getLogger(this.getClass());
public static void main(String[] args) {
SpringApplication.run(UsersApplication.class, args);
}
@Override
public void run(String... strings) throws Exception {
logger.info("\n / ̄ ̄\ \n" +
"< ´ ⊙ \ \n" +
" | 3 丶 \n" +
"< 、⊙ \ \n" +
" \__/(∪ _∪) \n" +
" U U\n" +
"启动完成!");
}
}
二、当然您也可以写一个config配置文件
MyBatisConfig.java
@Configuration
@MapperScan("com.programmersupermarket.users.mapper")
public class MyBatisConfig {
}