package com.mindskip.xzs.configuration.application; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.stereotype.Component; /** * @version 2.2.0 * @description: 应用上下文 * Copyright (C), 2020-2021, 武汉思维跳跃科技有限公司 * @date 2021 /9/7 9:45 */ @Component public class ApplicationContextProvider implements ApplicationContextAware { private static ApplicationContext context; private ApplicationContextProvider() { } @Override public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { context = applicationContext; } /** * Gets bean. * * @param the type parameter * @param aClass the a class * @return the bean */ public static T getBean(Class aClass) { return context.getBean(aClass); } /** * Gets bean. * * @param the type parameter * @param name the name * @return the bean */ @SuppressWarnings("unchecked") public static T getBean(String name) { return (T) context.getBean(name); } }