类 SpringUtils
- java.lang.Object
-
- ai.yue.library.base.util.SpringUtils
-
- 所有已实现的接口:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.config.BeanFactoryPostProcessor,org.springframework.context.ApplicationContextAware
@Component public class SpringUtils extends Object implements org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.context.ApplicationContextAware
应用上下文工具类,用于在普通类中获取Spring IOC容器中的bean对象,包括:1、Spring IOC容器中的bean对象获取 2、注册和注销Bean- 从以下版本开始:
- 2020年4月6日
- 作者:
- ylyue
-
-
构造器概要
构造器 构造器 说明 SpringUtils()
-
方法概要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 说明 static StringgetActiveProfile()获取当前的环境配置,当有多个环境配置时,只获取第一个static String[]getActiveProfiles()获取当前的环境配置,无配置返回nullstatic org.springframework.context.ApplicationContextgetApplicationContext()获取applicationContextstatic StringgetApplicationName()获取应用程序名称static <T> TgetBean(Class<T> clazz)通过class获取Beanstatic ObjectgetBean(String name)通过name获取 Beanstatic <T> TgetBean(String name, Class<T> clazz)通过name,以及Clazz返回指定的Beanstatic org.springframework.beans.factory.ListableBeanFactorygetBeanFactory()获取ListableBeanFactory,可能为ConfigurableListableBeanFactory或ApplicationContextAwarestatic org.springframework.beans.factory.config.ConfigurableListableBeanFactorygetConfigurableBeanFactory()获取ConfigurableListableBeanFactorystatic StringgetProperty(String key)获取配置文件配置项的值voidpostProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)static voidpublishEvent(Object event)发布事件 Spring 4.2+ 版本事件可以不再是ApplicationEvent的子类static voidpublishEvent(org.springframework.context.ApplicationEvent event)发布事件static <T> voidregisterBean(String beanName, T bean)动态向Spring注册BeanvoidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext)static voidunregisterBean(String beanName)注销bean
-
-
-
方法详细资料
-
postProcessBeanFactory
public void postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory) throws org.springframework.beans.BeansException- 指定者:
postProcessBeanFactory在接口中org.springframework.beans.factory.config.BeanFactoryPostProcessor- 抛出:
org.springframework.beans.BeansException
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
- 指定者:
setApplicationContext在接口中org.springframework.context.ApplicationContextAware
-
getBeanFactory
public static org.springframework.beans.factory.ListableBeanFactory getBeanFactory()
获取ListableBeanFactory,可能为ConfigurableListableBeanFactory或ApplicationContextAware- 返回:
ListableBeanFactory
-
getConfigurableBeanFactory
public static org.springframework.beans.factory.config.ConfigurableListableBeanFactory getConfigurableBeanFactory() throws cn.hutool.core.exceptions.UtilException获取ConfigurableListableBeanFactory- 返回:
ConfigurableListableBeanFactory- 抛出:
cn.hutool.core.exceptions.UtilException- 当上下文非ConfigurableListableBeanFactory抛出异常
-
getApplicationContext
public static org.springframework.context.ApplicationContext getApplicationContext()
获取applicationContext- 返回:
- ApplicationContext
-
getBean
public static <T> T getBean(Class<T> clazz)
通过class获取Bean- 类型参数:
T- Bean类型- 参数:
clazz- Bean类- 返回:
- Bean对象
-
getBean
public static <T> T getBean(String name, Class<T> clazz)
通过name,以及Clazz返回指定的Bean- 类型参数:
T- bean类型- 参数:
name- Bean名称clazz- bean类型- 返回:
- Bean对象
-
getApplicationName
public static String getApplicationName()
获取应用程序名称- 返回:
- 应用程序名称
-
getActiveProfiles
public static String[] getActiveProfiles()
获取当前的环境配置,无配置返回null- 返回:
- 当前的环境配置
-
getActiveProfile
public static String getActiveProfile()
获取当前的环境配置,当有多个环境配置时,只获取第一个- 返回:
- 当前的环境配置
-
registerBean
public static <T> void registerBean(String beanName, T bean)
动态向Spring注册Bean由
BeanFactory实现,通过工具开放API- 类型参数:
T- Bean类型- 参数:
beanName- 名称bean- bean
-
unregisterBean
public static void unregisterBean(String beanName)
注销bean将Spring中的bean注销,请谨慎使用
- 参数:
beanName- bean名称
-
publishEvent
public static void publishEvent(org.springframework.context.ApplicationEvent event)
发布事件- 参数:
event- 待发布的事件,事件必须是ApplicationEvent的子类
-
publishEvent
public static void publishEvent(Object event)
发布事件 Spring 4.2+ 版本事件可以不再是ApplicationEvent的子类- 参数:
event- 待发布的事件
-
-