@Autowired的流程
时间: 2023-10-07 11:12:49 浏览: 92
SpringBoot集成shiro,MyRealm中无法@Autowired注入Service的问题
5星 · 资源好评率100%
@Autowired 是一种 Spring 框架中的注解,用于自动装配对象。它的流程如下:
1. 在配置文件中配置使用自动装配:可以通过 XML 配置文件或者注解配置类来启用自动装配。例如,在 XML 配置文件中可以使用 `<context:component-scan>` 标签开启自动扫描装配。
2. Spring 容器启动时,会扫描指定的包路径,寻找被 @Autowired 注解标记的字段、方法或构造函数。
3. 当找到被 @Autowired 注解标记的目标时,Spring 容器会尝试通过类型匹配来找到与之对应的 Bean 对象。
4. 如果有多个符合条件的 Bean 对象,Spring 容器会根据一定的规则进行选择,如优先选择有特定标识的 Bean 或者优先选择同一接口的实现类。
5. 如果找到了匹配的 Bean 对象,则将该 Bean 对象自动注入到被 @Autowired 注解标记的字段、方法或构造函数中。
6. 如果没有找到匹配的 Bean 对象,Spring 容器会抛出异常。
总结来说,@Autowired 可以根据类型进行自动装配,实现依赖注入的功能。它简化了我们手动获取和注入对象的过程,提高了开发效率。
阅读全文