为了账号安全,请及时绑定邮箱和手机立即绑定

ApplicationContextAware使用说明

https://img1.sycdn.imooc.com//5bd6d78d000178e709650247.jpg

唯一接口方法作用

设置该对象在其中运行的ApplicationContext
通常这个调用将被用来初始化对象
在普通bean属性的装配之后但在初始回调例如InitializingBean#afterPropertiesSet()或一个自定义的初始方法之前调用
在链接ResourceLoaderAware#setResourceLoader之后调用

在使用spring整合的项目时,有时候需要获取ApplicationContext中的bean,就需要在spring加载过程中将ApplicationContext注入到工具类当中,在使用时,直接从工具类中获取对应的bean,这样就很方便。
有如下的几种方式:

  1. 直接使用spring的xml配置加载

  2. 在Web应用中,使用Servlet或者Linsener,通过WebApplicationContext将ApplicationContext注入

  3. 实现ApplicationContextAware接口;该方法比较方便,推荐使用该方法;

要运行的ApplicationContext希望被通知的任何对象实现的接口。

实现这个接口是有道理的,例如当一个对象需要访问一个集合的合作bean。
注意,通过bean引用的配置比实现此接口更适合用于bean的查找目的。

如果对象需要访问file资源,即要调用getResource,想要发布应用程序事件,或者需要访问MessageSource,那么也可以实现此接口。但是,在这种特定情况下,最好是实现更具体的ResourceLoaderAware,ApplicationEventPublisherAware或MessageSourceAware接口

请注意,文件资源依赖关系也可以以类型为org.springframework.core.io.Resource的bean属性公开,通过Struts填充,由bean工厂进行自动类型转换。这样就不需要实现任何回调接口,只是为了访问一个特定的文件资源。

在程序当中就可以直接从ApplictionContext中获取对应的bean了。



作者:芥末无疆sss
链接:https://www.jianshu.com/p/5a8723d66ea4
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消