spring根据基类中的泛型参数给属性注入值的问题

zsdsywr123 2016-10-13 04:16:32
基类如下

@Transactional(readOnly = true)
public abstract class CrudService<D extends CrudDao<T>, T extends DataEntity<T>> {

/**
* 持久层对象
*/
@Autowired
protected D dao;
}


现有如下类;


@Service
@Transactional(readOnly = true)
public class ArticleService extends CrudService<ArticleDao, Article> {

}


我疑惑的是spring启动的时候能为这个ArticleService注入dao属性,也就是ArticleDao的值,按理说泛型会编译后擦除,而@Autowired根据类型注入dao属性,而通过反射获取到的dao的类型是CrudDao,无法判断具体类型, 而spring框架为什么可以那么准确的注入 dao属性呢?
...全文
256 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
信阳毛尖 2016-10-15
  • 打赏
  • 举报
回复
不懂java
卖水果的net 2016-10-15
  • 打赏
  • 举报
回复
不懂,纯帮顶;

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧