开发者社区> 问答> 正文

spring 实现ApplicationContextAware 具体过程是怎么执行的

我们在spring 环境外 获取spring的上下文 可以实现 ApplicationContextAware

但我不明白的是 我实现了这个接口 spring怎么知道我实现了?

当spring在启动的时候 是通过 java的反射机制 获取到ApplicationContextAware 的实现类 在在执行接口的所有方法吗 ? 具体怎么运行的 麻烦大神指点一下

展开
收起
a123456678 2016-03-18 14:06:41 3014 0
1 条回答
写回答
取消 提交回答
  • 1.你必须把这个 class 给了 spring 托管(无论你是打了@注解,然后配了扫描范围,或者是直接在 xml 中配了)

    2.既然这个 class 你托管给了 spring ,spring 知道了它的存在,spring 在启动的时候就需要实例化这个 class(如果是懒加载就是你需要用到的时候实例化),在实例化这个 class 的时候,发现它包含这个 ApplicationContextAware 接口的话,sping 就会调用这个对象的 setApplicationContext 方法,把 applicationContext Set 进去了。

    2019-07-17 19:06:32
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多