开发者社区 问答 正文

通过类反射调用的类中,通过Spring @Autowired 装载失败了

使用了@Autowired注释,自动装配成员变量,正常情况下没有问题,但是当这个类通过java的反射机制调用时,自动装配失败,成员变量时空值,出现空指针异常。

展开
收起
小旋风柴进 2016-03-04 15:55:25 3599 分享 版权
1 条回答
写回答
取消 提交回答
  • 自动装配是在spring环境下当使用该类的实例时由spring容器完成了类的实例化过程,当然包括对依赖对象的实例化过程。
    而通过反射创建实例时,是根据你调用的构造函数完成的实例化过程,没有容器的自动化创建实例了,所以需要自己对依赖对象进行注入。
    所以依赖spring容器实例化和自己用反射实例化是两种独立的方式,不能相互渗透的。

    2019-07-17 18:52:25
    赞同 展开评论