Spring环境下非注入类获取注入类的对象

继承ApplicationContextAware实现工具类:

@Component
public class SpringContextUtil implements ApplicationContextAware
{
    private static ApplicationContext applicationContext = null;
    
    @Override
    public void setApplicationContext(ApplicationContext context)
        throws BeansException
    {
        if (applicationContext == null)
        {
            applicationContext = context;
        }
    }
    
    public static ApplicationContext getApplicationContext()
    {
        return applicationContext;
    }
    
    public static <T> T getBean(Class<T> clazz)
    {
        return getApplicationContext().getBean(clazz);
    }
    
    public static final Object getBean(String beanName)
    {
        return getApplicationContext().getBean(beanName);
    }
}

在非Spring托管的类中获取Spring容器中托管的对象

发布了73 篇原创文章 · 获赞 44 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_34928194/article/details/103585818