import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
@Component
public class GetBeanUtil implements ApplicationContextAware {
private static ApplicationContext context;
@Override
public void setApplicationContext(ApplicationContext applicationContext) {
if (context == null) {
GetBeanUtil.setContext(applicationContext);
}
}
/*
* 获取applicationContext
* */
public static ApplicationContext getContext() {
return GetBeanUtil.context;
}
public static void setContext(ApplicationContext context) {
GetBeanUtil.context = context;
}
public static Object getBean(String name) {
return getContext().getBean(name);
}
public static <T> T getBean(Class<T> current) {
return getContext().getBean(current);
}
}