Spring通过Java动态代理(java.lang.reflect.Proxy)创建类对象。即
@Component
public class NewsService implements Service{
}
但Spring如何注入成员变量?即
@Autowired
private EntityManager em;
Java动态代理使用interface
(即Service
)来创建对象。但是如何注入成员变量? interface
不知道实例变量。
当注入成员实例时?加载时间?(当创建包含类对象?)或延迟加载? (首先使用对象?)
答案 0 :(得分:1)
对你来说很少有事实:
如何实现依赖注入:
setFoo(...)
)或直接设置字段值(反射允许设置私有成员)。@Bean
方法时,依赖注入由您的方法完成。有点代理: