首页
学习
活动
专区
工具
TVP
发布

获取SpringBoot项目的applicationContext对象

对象是 开源框架的上下文对象实例,在项目运行时自动装载 内的所有信息到内存。传统的获取方式有很多种,不过随着 版本的不断迭代,官方也慢慢的不建议使用部分方式。下面我简单介绍一种 官方推荐使用的方式!

本章目标

基于SpringBoot平台完成 对象的获取,并通过实例手动获取 管理的 .

恒宇少年的SpringBoot简书企业级核心技术学习专题

构建项目

本章项目不需要太多的内容,添加Web依赖就可以了。

ApplicationContextAware

这个接口对象就是我们今天的主角,其实以实现 接口的方式获取 对象实例并不是SpringBoot特有的功能,早在Spring3.0x版本之后就存在了这个接口,在传统的 项目内同样是可以获取到 实例的,下面我们看看该如何编码才能达到我们的效果呢?

实现ApplicationContextAware接口

创建一个实体类并实现 接口,重写接口内的 方法来完成获取 实例的方法,代码如下所示:

我们拿到 对象实例后就可以手动获取 的注入实例对象,在 类内我简单的实现了几个方法来获取指定的 实例,当然你可以添加更多的方法来完成更多的业务逻辑。

如果你是想在非 管理的实体内使用 还不想采用注入 来完成实例化,这时我们可以修改 实例对象为静态实例,方法改为静态方法,这样在外部同样是可以获取到指定 的实例。如下所示:

这里要注意 类上的 注解是不可以去掉的,去掉后 就不会自动调用 方法来为我们设置上下文实例。

总结

本章内容较少,主要讲解了 平台下采用 的方式完成 实例的获取,并通过 实例完成对 管理的 实例手动获取。

SpringBoot配套源码地址:https://gitee.com/hengboy/spring-boot-chapter

SpringCloud配套源码地址:https://gitee.com/hengboy/spring-cloud-chapter

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180710G08T5K00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券