我的上一篇文章上面有比较详细的说角getBean的流程。其中对propery注入的过程通过画的流程图比较清楚的展现出来。最终是通过BeanWrapperImpl类的setValue方法来完成property注入。但是究竟是怎么样获取method然后invoke的,还不太清楚。我的想法是代码里面应该有set+Name 和get+ Name进行组合字符串的操作,但实际上并不是这样的。流程是这样的先看流程图
1.我们首先来看bean对象的创建
到instantiatebean这个函数就是实际生成bean对象了,其中beanInstance就是生成的实际的bean对象。然后用它生成一个BeanWrapperImpl对象。看里面干了些什么
什么也没干,就是把这对象传给了父类。再跟踪到父类
然后就是setWrappedInstance函数调用看做了些什么
spring property 属性注入详解
最新推荐文章于 2024-08-16 12:59:25 发布
本文详细介绍了Spring中Bean的Property注入过程,从Bean对象的创建到BeanWrapperImpl的使用,再到PropertyDescriptor和Java内省机制的应用。文章揭示了在没有getter方法的情况下,如何仍然能正常工作的原理,并提供了一个简单的AOP示例代码,帮助理解Spring的Property注入机制。
摘要由CSDN通过智能技术生成