[英]Spring autowire generic type
Spring(從版本4開始)聲稱支持通用類型注入,並且我正在嘗試執行以下操作:
public abstract class AbstractControl<T extends IService> {
@Autowired
private T service;
protected T getService(){
return service;
}
public void setService(T service) {
this.service = service;
}
}
然后是此類的擴展:
public class FooControl extends AbstractControl<LoginService> {
}
但是Spring正在嘗試注入IService
。 是否可以注入繼承的類型?
嘗試將@Autowired
移到子類中,如下所示:
public abstract class AbstractControl<T extends IService> {
private T service;
protected T getService(){
return service;
}
public void setService(T service) {
this.service = service;
}
}
和子類:
public class FooControl extends AbstractControl<LoginService> {
@Override
@Autowired
public void setService(LoginService service) {
this.service = service;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.