ApplicationContextAware

ApplicationContextAware作用及如何使用 阅读详情

spring 中的有一个ApplicationContextAware接口可以帮助我们在自定义的bean中得到spring 应用的上下文(ApplicationContext),只要自定义的bean 实现 这个接口,并重写其setApplicationContext 方法即可。

<!-- 扫描jar包 -->
<context:component-scan base-package="com.prcsteel.peanut"/>
<bean id="restAppContextAware" class="com.prcsteel.peanut.config.RestAppContextAware"/>
public class RestAppContextAware implements ApplicationContextAware {

    private static final Logger logger = LoggerFactory.getLogger(RestAppContextAware.class);

    private ApplicationContext applicationContext;

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.applicationContext = applicationContext;
    }
}

再结合 @PostConstruct 注解可以bean 初始化时运用applicationContext自行处理一些逻辑,例如:加载自定义注解等。

public RestAppContextAware() {
        logger.info("初始化构造函数");
    }

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.applicationContext = applicationContext;
        logger.info("在初始化 RestAppContextAware 得到应用上下文 {}",this.applicationContext.toString());
    }

    @PostConstruct
    public void init(){
        logger.info("在初始化 RestAppContextAware 之前,运用 {}处理一些逻辑",this.applicationContext);
    }

    @PreDestroy
    public void destroy(){
        logger.info("在销毁 RestAppContextAware 之前,运用 {}处理一些逻辑",this.applicationContext);
    }

启动应用程序加载该bean时即可在init方法中处理自定义的逻辑。
构造函数,setApplicationContext ,init 方法三者的执行顺序为:
构造函数–>setApplicationContext–>init

ApplicationContextAware接口的作用 前言 在我们开发Spring项目时,不管是使用别人的开源框架,还是使用自己公司框架,或者是自己搭建框架的时候,会见到ApplicationContextAware这个接口,可能最常见的是如下代码 public class PermitAllUrlProperties implements InitializingBean, ApplicationContextAware { 这是我在搭建自己的微服务框架SpringSecurityOAuth2这部分的代码时使用到的场景,那么下面就针对这个Applicati 阅读详情

相关推荐

LEAP模型—低排放分析平台

LEAP 正在迅速成为进行综合资源规划、温室气体 (GHG) 缓解评估和低排放发展战略 (LEDS) 的国家的事实标准,尤其是在发展中国家,许多国家也选择使用 LEAP 作为其承诺的一部分向联合国气候变化框架公约(UNFCCC)报告。至少有 32 个国家使用 LEAP 来创建能源和排放情景,这些情景是其国家自主气候变化贡献计划 (INDC) 的基础:具有历史意义的巴黎气候协议的基础旨在表明各国开始经济脱碳的意图和投资于气候适应力。

weixin_54697010的博客 3280

入门 15 - Aware相关接口

Spring中提供一些Aware相关接口,像是BeanFactoryAware、 ApplicationContextAware、ResourceLoaderAware、ServletContextAware等等,实作这些 Aware接口的Bean在被初始之后,可以取得一些相对应的资源,例如实作BeanFactoryAware的Bean在初始后,Spring容器将会注入BeanFactory的...

中源 409

Windowns下Git环境配置-命令行方式

文章目录一、配置Git1.1 下载Git并安装1.2 配置本地Git用户名和邮箱1.3 注册GitHub二、生成本地公钥,放到GitHub上-SSH Key2.1 生成本地公钥命令2.2 查看生成的公钥2.3 在GitHub放上公钥并测试连通性三、创建项目实操四、可能出现的问题4.1.push不成功4.2.提示SSL的问题4.3.域名不能解析的问题4.4.如果github连接不上的问题 一、配置Git 1.1 下载Git并安装 Git官网 默认安装,根据需要修改安装路径 1.2 配置本地Git用户名和邮箱

学习工作笔记 1135

Spring之ApplicationContextAware使用详解

Spring定义的类实现ApplicationContextAware接口会自动的将应用程序上下文加入,首先我们看下具体的实现示例; 1.示例代码 package com.yaomy.security.oauth2.filter; import org.springframework.beans.BeansException; import org.springframework.context...

OceanSky的专栏 2万+

Centos7配置阿里云镜像源的教程

查看你的Centos版本,版本过低会导致安装失败,验证网络是否可以连接阿里云镜像,使用阿里云是需要网络的。# wget命令下载: wget [options] [url]# curl命令下载: curl [options] [url]我上面这个图片由于电脑问题是还没有加载完的。删除原来或者之前的yun源。

lyhshs的博客 2260

4相5线步进电机驱动原理

步进电机驱动

while(1) 3万+

Spring的ApplicationContextAware的使用

Spring的ApplicationContextAware的使用1 问题引入2 ApplicationContextAware的简介3 使用场景 Spring中ApplicationContextAware主要用来获取Spring上下文已经实例化的Bean对象 1 问题引入 项目使用Spring管理各个实例对象Bean, 如果为了使用已被实例化的Bean对象,如果使用再次加载配置文件的方法,可能会出现一个问题,如一些线程配置任务, 会启动两份,产生了冗余. ApplicationContext app

ABestRookie的博客 7456

【Win10/11】Windows电脑WiFi显示小地球/断网的解决方法 Windows WiFi小地球、网络连接中断、网络重置、无线网卡驱动、Win10/Win11网络修复

最近经常有粉丝留言问我,Windows 电脑突然连不上 WiFi,右下角网络图标显示成了“小地球 🌐”,或者干脆提示“未连接 - 没有可用的连接”。明明其他设备网络都正常,唯独自己的电脑断了。作为在互联网大厂混迹多年的前端程序员,我自己也碰到过这个问题。总结几种比较常见、亲测有效的解决方法,写出来供大家参考,希望能帮你快速恢复上网!问题原因推荐解决方法系统设置错乱使用网络重置功能驱动异常或冲突卸载后重启自动安装驱动驱动版本过旧手动更新网卡驱动实在不行考虑使用系统还原点或重装系统这几个方法中,

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 3848

ApplicationContextAware使用理解

当一个类实现了这个接口(ApplicationContextAware)之后,这个类就可以方便获得ApplicationContext中的所有bean。换句话说,就是这个类可以直接获取spring配置文件中,所有有引用到的bean对象。 (2)ApplicationContextAware配合自定义注解扫描,把数据加载到一个公共map中: @Component("crsDealMap") public final class DealMap implements ApplicationContex

weixin_42437243的博客 1万+

人工智能在文学领域的应用:创作无限可能的智能作家

人工智能在文学领域的应用:创作无限可能的智能作家 作者:禅与计算机程序设计艺术 1. 背景介绍 人工智能技术近年来飞速发展,在各个领域都有广泛应用。文学创作作为人类最高级的智力活动之一,也逐渐受到人工智能技术的影响和改变。随着自然语言处理、生成式模型等人工智能

AI天才研究院 1110

HighTec安装使用

HighTec安装使用

qq_43552564的博客 3835

ApplicationContextAware接口的使用

ApplicationContextAware接口一、ApplicationContextAware的作用1、ApplicationContext是什么?2、ApplicationContextAware作用二、ApplicationContextAware如何使用三、知识点拓展 一、ApplicationContextAware的作用 1、ApplicationContext是什么?         很多人都知道,Applic

qq_41563912的博客 8722

基于STM32的室内环境监测系统设计与实现

摘要 本文设计了一种基于STM32的室内环境监测系统,通过传感器实时采集温湿度、空气质量、烟雾浓度等数据,并利用Wi-Fi模块上传至云服务器。系统采用STM32F103C8T6作为主控芯片,结合DHT11、MQ系列传感器及BMP280气压传感器实现数据采集,通过ESP8266模块实现远程数据传输。用户可通过手机APP实时查看环境参数,并在数据超标时触发报警。实验表明,系统运行稳定,监测精度高,具有低成本、易扩展等特点,为改善室内环境质量提供了有效解决方案。 关键词:STM32;室内环境监测;传感器;Wi-F

3254968421的博客 221

ApplicationContextAware详解用法

ApplicationContextAware用法 当一个类实现了这个接口之后,这个类就可以方便的获得ApplicationContext对象(spring上下文),Spring发现某个Bean实现了ApplicationContextAware接口,Spring容器会在创建该Bean之后,自动调用该Bean的setApplicationContext(参数)方法,调用该方法时,会将容器本身ApplicationContext对象作为参数传递给该方法。 案例 package com.lyj.demo.uti

qq_40093255的博客 2万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Applicationcontextaware作用

ApplicationContextAware通过它Spring容器会自动把上下文环境对象调用ApplicationContextAware接口中的setApplicationContext方法。 我们在ApplicationContextAware的实现类中,就可以通过这个上下文环境对象得到Spring容器中的Bean。 ApplicationContextAware的作用是可以方便获取S...

hewenjing8168的博客 8488

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

谈谈Spring的ApplicationContextAware接口

谈谈Spring的ApplicationContextAware接口 现象: ​ 我们写一个类,实现ApplicationContextAware接口,类上再加一个@Component后,运行项目,你会发现在我们实现的setApplicationContext会传进来Spring的ApplicationContext。 @Component public class TestMyBeanPostProcess implements ApplicationContextAware { @Override

苦行僧 3582

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ApplicationContextAware接口

方法都是 IOC 容器启动时最核心的方法。bean初始化时各个扩展点的执行顺序。

Pluto372的博客 3175

ApplicationContextAware 的作用

ApplicationContextAware 通过它Spring容器会自动把上下文环境对象调用ApplicationContextAware接口中的setApplicationContext方法。 我们在ApplicationContextAware的实现类中,就可以通过这个上下文环境对象得到Spring容器中的Bean。   看到—Aware就知道是干什么的了,就是属性注入的,但是这个Ap...

香烟达人的博客 3577

SpringBoot的ApplicationContextAware

springboot启动时,扫描生成的对象会放在springboot容器中被管理,不过有时候我们在程序中需要通过类名,或者对象名,来获取到所需要使用的对象,这种情况我们就可以使用ApplicationContextAware来实现 示例: package com.qingnian.spring.running; import org.springframework.beans.BeansExc...

weixin_44971379的博客 3438

ApplicationContextAware应用

文章目录ApplicationContextAware应用配置文件web.xmlapplicationContext.xmljava代码请求代码测试 ApplicationContextAware应用 配置文件 web.xml <context-param> <param-name>contextConfigLocation</param-name> ...

谢耀眼 1314

【Spring】16 ApplicationContextAware 接口

Spring 框架提供了许多回调接口,用于在 Bean 的生命周期中执行特定的操作。ApplicationContextAware 接口是其中之一,它允许 Bean 获取对 ApplicationContext 的引用。本文将介绍 ApplicationContextAware 接口的作用、使用方式,以及在实际应用中的常见场景。

好久不见的流星 1301

【Spring】15 ApplicationContextAware 接口

Spring 框架提供了许多回调接口,用于在 Bean 的生命周期中执行特定的操作。通过实现 ApplicationContextAware 接口,Spring 提供了一种便捷的方式让 Bean 获取对 Spring 容器的引用。这使得 Bean 可以在运行时与容器进行交互,获取其他 Bean 的引用、获取环境变量等。

好久不见的流星 3539
上一篇: tomcat8 gzip 优化配置
下一篇: mybatis错误:Invalid bound statement (not found): com.prcsteel.peanut.dao.UserDao.selectById
只想吃花生
博客等级 码龄15年 1粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值