spring 4.x 测试泛型注入

3 月,跳不动了?>>> spring 4.x 测试泛型注入

Spring 版本 4.1.3.RELEASE

基础测试

spring 4.x 测试泛型注入

spring 4.x 测试泛型注入

spring 4.x 测试泛型注入

spring 4.x 测试泛型注入

spring 4.x 测试泛型注入

运行结果

    spring 4.x 测试泛型注入

猜测 spring 泛型注入只能针对于只有一个指定的泛型类,如果有两个子类具有相同的泛型那么Spring会不知道如何处理。

测试

spring 4.x 测试泛型注入spring 4.x 测试泛型注入

spring 4.x 测试泛型注入

 

测试结果 

spring 4.x 测试泛型注入

这里 Spring 期望的是只有一个 bean ,但是却找到了两个。解决这个问题的办法很简单 : 使用

javax.annotation.Resource 注解指定名称进行注入即可。

spring 4.x 测试泛型注入

测试结果

    bean 注入成功

    spring 4.x 测试泛型注入

    spring 4.x 测试泛型注入

   

     另外一种解决方法就是使用 org.springframework.beans.factory.annotation.Qualifier 注解 指定 qualifier 进行注入。

    spring 4.x 测试泛型注入

    spring 4.x 测试泛型注入

spring 4.x 测试泛型注入

测试结果 

    spring 4.x 测试泛型注入

    spring 4.x 测试泛型注入