Java @Autowired在Spring中是如何实现的
我真的很想对@autowired有一个基本的了解 春季实施。Java @Autowired在Spring中是如何实现的,java,spring,autowired,Java,Spring,Autowired,我真的很想对@autowired有一个基本的了解 春季实施。 反射应该以某种方式隐含在其实现中,但我不知道如何实现。 你能帮忙吗 通过@Autowired的自动布线由BeanPostProcessor实现执行 此BeanPostProcessor处理每个bean,将扫描其类(和超类)以查找任何@Autowired注释,并根据注释内容(构造函数、字段或方法)采取适当的操作 建造商 任何给定bean类中只有一个构造函数(最大值)可以携带此参数 “required”参数设置为true的注释,表示 当用
反射应该以某种方式隐含在其实现中,但我不知道如何实现。
你能帮忙吗 通过
@Autowired
的自动布线由BeanPostProcessor
实现执行
此BeanPostProcessor
处理每个bean,将扫描其类(和超类)以查找任何@Autowired
注释,并根据注释内容(构造函数、字段或方法)采取适当的操作
建造商
任何给定bean类中只有一个构造函数(最大值)可以携带此参数
“required”参数设置为true的注释,表示
当用作Springbean时,构造函数将自动连线。如果多个
非必需的构造函数携带注释,它们将
被认为是自动布线的候选者。具有
通过匹配可以满足的最大依赖项数
将选择Spring容器中的bean。如果没有
可以满足候选条件,然后使用默认构造函数(如果存在)
将使用。带注释的构造函数不必是公共的
田野
字段在构建bean之后,在任何
配置方法被调用。这样的配置字段不必为空
公众
方法
配置方法可以有任意名称和任意数量的参数;
这些参数中的每一个都将在
弹簧容器。Bean属性设置器方法实际上只是一个
这种通用配置方法的特例。配置方法不支持
必须公开
所有这些都是通过反射完成的
进一步阅读: