Consider defining a bean of type ‘XXXX‘ in your configuration.

发布时间:2024年01月12日

今天学习尚硅谷的SpringCloud时,发现支付模块无法启动,控制台输出下面的错误:

看起来可能是dao层没有被注入。

然后根据我已有的知识,我检查了注解@Mapper

@Mapper
public interface PaymentDao {
    public int create(Payment payment);
    public Payment getPaymentById(@Param("id") long id);
}

pom也添加了starter-web依赖:

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-web</artifactId>
</dependency>

然后不知道原因了,于是凭借死马当活马医的理念,试着在启动类添加了注解@ComponentScan,结果启动成功

@SpringBootApplication
@ComponentScan(basePackages = {"com.atguigu.springcloud.dao"})
public class PaymentMain8001 {
    public static void main(String[] args){

        SpringApplication.run(PaymentMain8001.class, args);
    }
}

我是跟着视频,一行代码,一行代码的照着敲的。视频里是没有写@ComponentScan的,但是视频里却能成功启动。难道我看的视频不完整?还是什么其他原因?哎,搞不懂。。。

文章来源:https://blog.csdn.net/y523648/article/details/135547702
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。