问答详情
源自:4-2 Spring Bean装配之Autowired注解说明-1

Error creating bean with name 'injectionServiceImpl'

这是什么错误?代码都是按照老师写的

提问者:紫_羽 2017-07-24 22:14

个回答

  • ucandoooh
    2017-12-02 20:31:49

    如果自行撰写了构造函数,编译程序就不会自动建立默认构造函数,所以会初始化失败。在private InjectionDAO injectionDAO上 或者 setter上@Autowired的话,而且撰写的带参构造函数没有注释掉,前两者就没有默认构造函数来调用形成实例对象了,所以报错里头会有说no default constructor 还有 initialization失败

  • 紫_羽
    2017-07-25 08:30:14

    复制粘贴就是容易错。。。

    @Autowired

    private InjectionDAO injectionDAO;

    //设置注入

    public void setInjectionDAO(InjectionDAO injectionDAO) {

    this.injectionDAO = injectionDAO;

    }

    //构造器注入

        public InjectionServiceImpl(InjectionDAO injectionDAO){

        this.injectionDAO=injectionDAO;

        }

    三个共存就会报错,除非注解在set或构造函数上,不懂得为什么?