首页 > 其他分享 >在非Spring类中获取Spring管理的对象

在非Spring类中获取Spring管理的对象

时间:2023-08-01 15:35:15浏览次数:34  
标签:applicationContext Spring getBean 获取 static context public 类中

在非Spring类中获取Spring管理的对象

工具类:

package com.xxx.task.util;

import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;

@Component
public class MyBeanUtil implements ApplicationContextAware {

    private static ApplicationContext applicationContext;

    @Override
    public void setApplicationContext(ApplicationContext context) {
        applicationContext = context;
    }

    public static <T> T getBean(Class<T> beanClass) {
        if (applicationContext == null) {
            throw new IllegalStateException("Application context has not been set");
        }
        return applicationContext.getBean(beanClass);
    }

    public static <T> T getBean(String beanName) {
        if (applicationContext == null) {
            throw new IllegalStateException("Application context has not been set");
        }
        return (T) applicationContext.getBean(beanName);
    }
}

使用:

ZipConfig zipConfig = MyBeanUtil.getBean(ZipConfig.class);

标签:applicationContext,Spring,getBean,获取,static,context,public,类中
From: https://www.cnblogs.com/zhangruifeng/p/17596644.html

相关文章

  • 掌握Spring条件装配的秘密武器
    本文分享自华为云社区《Spring高手之路9——掌握Spring条件装配的秘密武器》,作者:砖业洋__。在Spring框架中,条件装配是一个强大的功能,可以帮助我们更好地管理和控制Bean的创建过程。本文详细解释了如何使用Spring的@Profile和@Conditional注解实现条件装配,通过具体的示例可以更好地......
  • 掌握Spring条件装配的秘密武器
    本文分享自华为云社区《Spring高手之路9——掌握Spring条件装配的秘密武器》,作者:砖业洋__。在Spring框架中,条件装配是一个强大的功能,可以帮助我们更好地管理和控制Bean的创建过程。本文详细解释了如何使用Spring的@Profile和@Conditional注解实现条件装配,通过具体的示例可以更好......
  • springboot 集成 onlyoffice 实现文档预览、编辑、pdf转化、缩略图生成
    开源地址https://gitee.com/lboot/lucy-onlyoffice介绍lucy-onlyoffice是依赖于onlyoffice的springboot文档预览编辑集成解决方案,该解决方案实现了了onlyoffice的访问使用,支持对常见文档类型的预览,编辑和转化。该解决方案提供了功能的拓展实现,用户可以基于拓展接口,实现业务系统......
  • Spring Cloud Alibaba 2022 正式发布,启动速度提升 10 倍,各方面直接起飞!
    大家好,我是栈长。经过SpringCloudAlibaba2022的第一个候选版本2022.0.0.0-RC1发布7个多月后,中间还有一个2022.0.0.0-RC2版本,就在前几天,SpringCloudAlibaba2022.0.0.0正式版终于正式发布了。SpringCloudAlibaba2022.0.0.0依赖更新由于SpringBoot各个版本......
  • springboot 使用log4j2配置
      pom配置如下:<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>......
  • spring boot学习(7)— 自定义中的 HttpMessageConverter
    在我们开发自己的应用时,有时候,我们可能需要自定义一些自己的数据格式来传输,这时,自定义的数据传输和类的实例之间进行转化就需要统一起来了, SpringMVC 中的 HttpMessageConverter 就派上用场了。HttpMessageConverter 的声明:publicinterfaceHttpMessageConverter<T>{......
  • 六、通过ADB方式直接获取APP名字,非包名
    通过adb获取已安装的包名很简单 adbshellpmlistpackages这里可以获取到所有app的包名,包括系统的和自己安装的,但是想获取app名字,比如"微信",就很困难。搜集了一些方法:一、直接dumpsys网上较多流传的一个命令可以获取到APP的详细信息adbshelldumpsyspackagecom.tenc......
  • 智慧校园源码:vue2+Java+springboot+MySQL+elmentui+jpa+jwt
    智慧校园综合管理云平台源码系统主要以校园安全、智慧校园综合管理云平台为核心,以智慧班牌为学生智慧之窗,以移动管理平台、家校沟通为辅。教师—家长一学校—学生循环的无纸化管理模式及教学服务,实现多领域的信息互联互通以及校园管理一体化、信息数据化、数据自动化。智慧班牌融合......
  • SpringCloud Gateway 在微服务架构下的最佳实践
    作者:徐靖峰(岛风)前言本文整理自云原生技术实践营广州站Meetup的分享,其中的经验来自于我们团队开发的阿里云CSB2.0这款产品,其基于开源SpringCloudGateway开发,在完全兼容开源用法的前提下,做了诸多企业级的改造,涉及功能特性、稳定性、安全、性能等方面。为什么需要微服务网......
  • 使用jQuery获取相关的标签值
    使用jQuery获取相关的标签值一、整理一下jquery获取值的方法在jQuery中,可以使用.val()方法来获取表单元素的值。该方法适用于大多数表单元素,包括文本、下拉框、单选框和复选框等。以下是一些示例代码:获取文本框的值:vartextValue=$('#myText').val(); 获取下拉框的选......