我正在使用 Spring 4.2.4.RELEASE 开发一个项目。
我听说过 Spring 4 的新功能(尤其是 autowiring of generic types ),并且当以下代码尚未编译时我感到很困惑:
@Service
public interface AuthenticationService<T> { ... }
public class VKAuthenticationService implements AuthenticationService<VKToken> { ... }
@RestController
public class VKAuthenticationController {
@Autowired
private AuthenticationService<VKToken> service;
}
预先感谢您提供的任何帮助。
最佳答案
在您的 VKAuthenticationService
上声明 @Service
怎么样?
@Service(name="myService")
public class VKAuthenticationService implements AuthenticationService<VKToken> { ... }
并使用@Autowired
和@Qualifier
来注入(inject)它
@RestController
public class VKAuthenticationController {
@Autowired
@Qualifier("myService")
private AuthenticationService<VKToken> service;
}
关于java - 泛型类型的 Autowiring 不起作用 [Spring 4+],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36236826/