spring - Spring注解@Autowired如何工作?

标签 spring dependency-injection autowired

我遇到了一个@Autowired的例子:

public class EmpManager {
   @Autowired
   private EmpDao empDao;
}

我很好奇 empDao 如何获取集合,因为没有 setter 方法并且它是私有(private)的。

最佳答案

Java 允许通过 AccessibleObject.setAccessible() method 关闭字段或方法上的访问控制(是的,首先要通过安全检查)它是反射框架的一部分(FieldMethod 都继承自 AccessibleObject)。一旦可以发现并写入该字段,剩下的事情就变得非常简单;只是一个Simple Matter Of Programming .

关于spring - Spring注解@Autowired如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46459728/

相关文章:

java - 缓存刷新显示带有@cacheable 注释的错误

spring - 我需要为哪些实体创建 Spring Data 存储库?

entity-framework - 使用多个 Db。如何注入(inject)连接到不同数据库的DbContext?

java - Spring @autowired 注释与 java TimerTask 不起作用

java - cxf Web 服务不更新

java - Kafka AvroSchema 未生成,当一个类具有数据类型为对象类的字段时

c# - 覆盖范围内依赖关系的正确方法

azure - 依赖注入(inject)容器是否在同一个包中的 azure 函数之间共享?

java - Spring:@Component 与 @Bean

java - 注入(inject) Autowiring 依赖项失败 - 无法 Autowiring 字段(Spring)