泛型注入的时候好像不能指定被注入的Bean的name?

来源:4-8 Spring Bean装配之基于Java的容器注解说明——基于泛型的自动装配

未卜先知

2017-01-08 11:29

@Configuration
public class StoreConfig {

    @Autowired
    @Qualifier("stringStore") 
    private Store<String> s1;

    @Bean("hello")  //指定name
    public Store stringStore(){
        return new StringStore();
    }
}

test:

@Test
public void testG(){
    Store store = super.getBean("hello");
    System.out.println(store.getClass().getName());
}

当然这里@Qualifier("stringStore") ,但是我改成@Qualifier("hello"),也是一样

http://img.mukewang.com/5871d20b0001b4e409810196.jpg

写回答 关注

1回答

  • 追逐sunny
    2017-01-08 12:32:33

    我将你的代码执行了一遍,可以在:

    泛型注入的时候指定被注入的Bean的name啊


    未卜先知

    不可能把。。。我把图贴上去了,不过报错信息太长 我用的是Spring4.3.4 Error creating bean with name 'storeConfig': Unsatisfied dependency expressed through field 's1' 如果Bean name和默认的方法名一样就没问题,改成其他的不行

    2017-01-08 13:48:54

    共 1 条回复 >

Spring入门篇

为您带来IOC和AOP的基本概念及用法,为后续高级课程学习打下基础

268787 学习 · 963 问题

查看课程

相似问题