我们在spring 环境外 获取spring的上下文 可以实现 ApplicationContextAware
但我不明白的是 我实现了这个接口 spring怎么知道我实现了?
当spring在启动的时候 是通过 java的反射机制 获取到ApplicationContextAware 的实现类 在在执行接口的所有方法吗 ? 具体怎么运行的 麻烦大神指点一下
1.你必须把这个 class 给了 spring 托管(无论你是打了@注解,然后配了扫描范围,或者是直接在 xml 中配了)
2.既然这个 class 你托管给了 spring ,spring 知道了它的存在,spring 在启动的时候就需要实例化这个 class(如果是懒加载就是你需要用到的时候实例化),在实例化这个 class 的时候,发现它包含这个 ApplicationContextAware 接口的话,sping 就会调用这个对象的 setApplicationContext 方法,把 applicationContext Set 进去了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
你好,我是AI助理
可以解答问题、推荐解决方案等
评论
全部评论 (0)