From 59e91a4e9ddaf23cebb12993c774aa899ab22d16 Mon Sep 17 00:00:00 2001 From: 郑永安 <zyazyz250@sina.com> Date: 星期一, 19 六月 2023 14:22:45 +0800 Subject: [PATCH] 描述 --- src/main/java/com/gk/firework/Domain/Utils/SpringBeanUtil.java | 64 ++++++++++++++++++++++++++++++++ 1 files changed, 64 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gk/firework/Domain/Utils/SpringBeanUtil.java b/src/main/java/com/gk/firework/Domain/Utils/SpringBeanUtil.java new file mode 100644 index 0000000..d64996b --- /dev/null +++ b/src/main/java/com/gk/firework/Domain/Utils/SpringBeanUtil.java @@ -0,0 +1,64 @@ +package com.gk.firework.Domain.Utils; + +import org.springframework.beans.BeansException; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.stereotype.Component; + +@Component +public class SpringBeanUtil implements ApplicationContextAware { + + private static ApplicationContext applicationContext; + + @Override + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { + SpringBeanUtil.applicationContext = applicationContext; + } + + + /** + * 获取applicationContext + * + * @return + */ + public static ApplicationContext getApplicationContext() { + return applicationContext; + } + + /** + * 通过name获取 Bean. + * + * @param name + * @return + */ + + public static Object getBean(String name) { + return getApplicationContext().getBean(name); + } + + /** + * 通过class获取Bean. + * + * @param clazz + * @param <T> + * @return + */ + + public static <T> T getBean(Class<T> clazz) { + return getApplicationContext().getBean(clazz); + } + + + /** + * 通过name,以及Clazz返回指定的Bean + * + * @param name + * @param clazz + * @param <T> + * @return + */ + public static <T> T getBean(String name, Class<T> clazz) { + return getApplicationContext().getBean(name, clazz); + } + +} -- Gitblit v1.9.2