spring注入问题,spring不能直接注入抽象类 中的属性,只能通过其子类完全注入
不多说代码如下:
定义一个抽象类 里面有IBaseDao接口属性
public abstract class ServiceImpl<T> implements IService<T> {
private IBaseDao<T> basedao;
public IBaseDao<T> getBasedao() {
return basedao;
}
public void setBasedao(IBaseDao<T> basedao) {
this.basedao = basedao;
}
}
//UserServiceImpl类继承了ServiceImpl类
public class UserServiceImpl<T extends User> extends ServiceImpl<T> implements
IUserService<T> {
}
//如果想要使用其中IBaseDao接口中的方法
在spring中的配置如下:
<!-- 将dao对象注入到ServiceImpl中,因为该类是抽象类故只能注入该类的子类 -->
<bean id="userImpl" class="ServiceImpl.UserServiceImpl">
<property name="basedao" ref="basedao"></property>
</bean>