package com.xxl.job.admin.core.util; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.stereotype.Component; @Component public class SpringContextUtil implements ApplicationContextAware { private static ApplicationContext applicationContext; public static ApplicationContext getApplicationContext() { return applicationContext; } // 下é¢çš„è¿™ä¸ªæ–¹æ³•ä¸ŠåŠ äº†@Overrideæ³¨è§£ï¼ŒåŽŸå› æ˜¯ç»§æ‰¿ApplicationContextAware接å£æ˜¯å¿…须实现的方法 @Override public void setApplicationContext(ApplicationContext applicationContext) { SpringContextUtil.applicationContext = applicationContext; } public static Object getBean(String name) { return applicationContext.getBean(name); } public static Object getBean(String name, Class<?> requiredType) { return applicationContext.getBean(name, requiredType); } public static <T> T getBean(Class<T> clazz) { return applicationContext.getBean(clazz); } public static boolean containsBean(String name) { return applicationContext.containsBean(name); } public static boolean isSingleton(String name) { return applicationContext.isSingleton(name); } public static Class<?> getType(String name) { return applicationContext.getType(name); } public static String[] getAliases(String name) { return applicationContext.getAliases(name); } }