spring因为代理而导致对象注入失败

在Spring框架过程中难免会遇到很多坑,入门者对象注入失败可能有以下原因:

    1、要注入的对象没有交给spring托管,检查一下配置文件是否有对应的bean或是否添加了注解

    2、使用注解配置的同学仔细检查以下注解名称和你注入时填写的是否有误

    3、使用注解看一下配置文件有没有开启扫描注解的配置

 

注入失败还有其他原因,例如代理。看一下下面的案例:

public interface A {

}

@Component("B")
public class B implements A {

}

public class Demo {
    @Resource("B")
    private B b;
}

上面注入B这个类对象时会报错,报错提示大概是proxy。也就是我们所说的代理报错

解决起来其实也简单,代码改成以下:

public class Demo {
    @Resource("B")
    private A b;
}

也就是用接口来接收注入的对象

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章