java tood注释_springboot分析六 如何把加了@Bean注解的类注入到ioc容器

@Bean的加载流程

再执行SpringApplication对象的run方法时 执行 refreshContext方法

763c16f8b98c44589fad0be684e74fc6.png

ecc9853d4ce1705d708e7e931c49602d.png

cad76609b04362f834b331acbd1b7b0e.png

0ffbe00aa18d7d53112148abe28ae55c.png

d3bba9797e521e8881f26e30a7ead3a0.png

c130816c95219f03b903ff1dd76bb57f.png

202eb72e274c1dc07b61f26e1056e18d.png

会执行 ConfigurationClassPostProcessor类的 postProcessBeanDefinitionRegistry方法

a199d685ed8e6d3cd669fa6cc3fd1cb8.png

ab41b916cb9f45a125321c05d180e7ee.png

aa6801ee61e33e891c0bb2a41372a16c.png

e39770d247c9cfeab5fa6aa6ed2ed729.png

7a6d9f3690baec366dc6a5b343a52962.png

ConfigurationClassParser#retrieveBeanMethodMetadata(sourceClass)方法会拿到当前类中所有加了@Bean注解的方法

2c45c2706e61e36498f97f642e35a730.png

再把上面拿到的所有@Bean注解的方法  放到ConfigurationClass对象的beanMethods属性里

f469ef11564f8b0e917fac52d029aaaf.png

把方法放到beanMethods里之后 执行ConfigurationClassPostProcessor#processConfigBeanDefinitions方法中的this.reader.loadBeanDefinitions(configClasses);把configClass对象加载到beanDefinitionMap中

13b99653d50b1c8a6624587edb6a3f40.png

3b8fc62ebf6e5d3f9a89f0dd92080ed2.png

从上面放到ConfigurationClass对象的beanMethods属性里  取出所有的beanMeathod方法 进行循环遍历

2ead79625851723e917e3e78119a3a4d.png

执行ConfigurationClassBeanDefinitionReader#loadBeanDefinitionsForBeanMethod方法 默认使用方法名作为beanDefinitionMap的key

如果@Bean注解中 给bean起了名字(@Bean(“123”))  beanDefinitionMap的key就使用起的名字(123)

46f041e5ec0c62d7b3ab3f0101152bc2.png

最后调用ConfigurationClassBeanDefinitionReader#loadBeanDefinitionsForBeanMethod方法中的this.registry.registerBeanDefinition(beanName, beanDefToRegister);  把beanMethod 注入到beanDefinitionMap中

e26fc23a7fbc1bd2025382f3f7b2c2ba.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TOOD目标检测算法是一种用于目标检测的算法,它在MS-COCO数据集上进行了实验,并取得了很好的性能。该算法通过设计一个用于评价anchor对齐指标的值来优化目标检测的结果。这个指标通过预测别的置信度和预测边界框的IoU来计算,同时通过调整参数α和β来控制两个任务对于对齐指标的影响。TOOD算法通过动态地关注任务对齐的anchor来提高目标检测的准确性。相比于其他单阶段检测算法,TOOD具有更高的AP指标,并且参数量和计算量更少。此外,TOOD还能更好地对目标分和定位两个任务进行对齐。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [二维目标检测sota---TOOD任务对齐的一阶目标检测算法](https://blog.csdn.net/qq_41621517/article/details/122130470)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [51.1 AP!TOOD:刷新单阶段目标检测新纪录!ICCV 2021 Oral](https://blog.csdn.net/amusi1994/article/details/120073068)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [目标检测之TOOD:Task-aligned One-stage Object Detection](https://blog.csdn.net/qq_41950533/article/details/124094016)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值