当前位置: 首页 > news >正文

风向 网站网站名注册

风向 网站,网站名注册,热门关键词查询,永久免费crm客户管理系统resolveDependency()实现 该方法表示,传入一个依赖描述(DependencyDescriptor),该方法会根据该依赖描述从BeanFactory中找出对应的唯一的一个Bean对象。 @Nullable Object resolveDependency(DependencyDescriptor descriptor, @Nullable String requestingBeanName,@Null…resolveDependency()实现 该方法表示,传入一个依赖描述(DependencyDescriptor),该方法会根据该依赖描述从BeanFactory中找出对应的唯一的一个Bean对象。 @Nullable Object resolveDependency(DependencyDescriptor descriptor, @Nullable String requestingBeanName,@Nullable SetString autowiredBeanNames, @Nullable TypeConverter typeConverter) throws BeansException; 下面来分析一下DefaultListableBeanFactory中resolveDependency()方法的具体实现,具体流程图: findAutowireCandidates()实现 根据类型找beanName的底层流程:​ 对应执行流程图为: ​ 找出BeanFactory中类型为type的所有的Bean的名字,注意是名字,而不是Bean对象,因为我们可以根据BeanDefinition就能判断和当前type是不是匹配,不用生成Bean对象把resolvableDependencies中key为type的对象找出来并添加到result中遍历根据type找出的beanName,判断当前beanName对应的Bean是不是能够被自动注入先判断beanName对应的BeanDefinition中的autowireCandidate属性,如果为false,表示不能用来进行自动注入,如果为true则继续进行判断判断当前type是不是泛型,如果是泛型是会把容器中所有的beanName找出来的,如果是这种情况,那么在这一步中就要获取到泛型的真正类型,然后进行匹配,如果当前beanName和当前泛型对应的真实类型匹配,那么则继续判断如果当前DependencyDescriptor上存在@Qualifier注解,那么则要判断当前beanName上是否定义了Qualifier,并且是否和当前DependencyDescriptor上的Qualifier相等,相等则匹配经过上述验证之后,当前beanName才能成为一个可注入的,添加到result中关于依赖注入中泛型注入的实现 首先在Java反射中,有一个Type接口,表示类型,具体分类为: raw types:也就是普通Classparameterized types:对应ParameterizedType接口,泛型类型array types:对应GenericArrayType,泛型数组type variables:对应TypeVariable接口,表示类型变量,也就是所定义的泛型,比如T、Kprimitive types:基本类型,int、booleanSpring中,但注入点是一个泛型时,也是会进行处理的,比如: @Component public class UserService extends BaseServiceOrderService, StockService {public void test() {System.out.println(o);}}public class BaseServiceO, S {@Autowiredprotected O o;@Autowiredprotected S s; } Spring扫描时发现UserService是一个Bean那就取出注入点,也就是BaseService中的两个属性o、s接下来需要按注入点类型进行注入,但是o和s都是泛型,所以Spring需要确定o和s的具体类型。因为当前正在创建的是UserService的Bean,所以可以通过userService.getClass().getGenericSuperclass().getTypeName()获取到具体的泛型信息,比如com.zhouyu.service.BaseServicecom.zhouyu.ser
http://www.pierceye.com/news/335898/

相关文章:

  • 做seo网站优化多少钱网站开发客户哪里找
  • 做网站一定要云解析吗海南公司注册网站
  • 建站之家官网办公装修设计
  • 永康网站建设的公司wordpress 图片分类
  • 网站商务通弹出窗口图片更换设置wordpress4.9 多站点
  • 如何仿制一个网站注册商标设计
  • 网站建设属于什么岗位旅游网站设计模板
  • 自己做的网站怎么链接火车头采集软件开发模型是什么
  • 新网站怎么做才会被收录正品海外购网站有哪些
  • 广东手机网站建设品牌js制作网页计算器
  • 化隆网站建设公司学做网站多久
  • 网站域名如何查询上海室内设计公司哪家好
  • 电子书推送网站怎么做新做的网站如何
  • 网站建设图片怎么加水印电商平台网站建设功能介绍
  • 一个门户网站怎么做金坛网站建设哪家好
  • 大学网站建设图江苏廉政建设网站
  • 班级网站建设方案网页美工的设计要点
  • 微网站搭建流程做网站的广告语
  • 那个网站做外贸canvas做的网站
  • 学做视频的网站wordpress上传大附件
  • 怎么做网站卖产品黄埭网站建设
  • 娱乐网站 建站软件学校网站建设栏目
  • 做调研有哪些网站网站建设策划书
  • 旺道网站排名优化建设网站需要做的工作
  • 设计公司网站 唐山本地备份wordpress
  • 淘宝客网站建设多少钱app网站开发案例
  • vs2008不能新建网站个性手绘个人网站模板下载
  • 西安好的网站建设公司西安高端网站制作公司哪家好
  • 网站分享按钮网站运营建站优化专家
  • 网站微信建设运维经验分享用cms创建自己带数据库的网站和在本机搭建网站运行平台的心得体会