From 59e91a4e9ddaf23cebb12993c774aa899ab22d16 Mon Sep 17 00:00:00 2001
From: 郑永安 <zyazyz250@sina.com>
Date: Mon, 19 Jun 2023 14:22:45 +0800
Subject: [PATCH] 描述
---
src/main/java/com/gk/firework/Config/Oauth2/SpringContextUtil.java | 69 ++++++++++++++++++++++++++++++++++
1 files changed, 69 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/gk/firework/Config/Oauth2/SpringContextUtil.java b/src/main/java/com/gk/firework/Config/Oauth2/SpringContextUtil.java
new file mode 100644
index 0000000..618e88d
--- /dev/null
+++ b/src/main/java/com/gk/firework/Config/Oauth2/SpringContextUtil.java
@@ -0,0 +1,69 @@
+package com.gk.firework.Config.Oauth2;
+
+import org.springframework.beans.BeansException;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+import org.springframework.stereotype.Component;
+
+/**
+ * Static injection of spring objects
+ *
+ * @author zhangby
+ * @date 2019-05-15 11:45
+ */
+@Component
+public class SpringContextUtil implements ApplicationContextAware {
+
+ private static ApplicationContext applicationContext;
+
+ /**
+ * 设置 setApplicationContext
+ * @param applicationContext application
+ * @throws BeansException beansException
+ */
+ @Override
+ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
+ if (SpringContextUtil.applicationContext == null) {
+ SpringContextUtil.applicationContext = applicationContext;
+ }
+ }
+
+ /**
+ * 获取applicationContext
+ * @return ApplicationContext
+ */
+ public static ApplicationContext getApplicationContext() {
+ return applicationContext;
+ }
+
+ /**
+ * 通过name获取 Bean.
+ * @param name 名称
+ * @return Object
+ */
+ public static Object getBean(String name) {
+ return getApplicationContext().getBean(name);
+ }
+
+ /**
+ * 通过class获取Bean.
+ * @param clazz class
+ * @param <T> T
+ * @return T
+ */
+ public static <T> T getBean(Class<T> clazz) {
+ return getApplicationContext().getBean(clazz);
+ }
+
+ /**
+ * 通过name,以及Clazz返回指定的Bean
+ * @param name name
+ * @param clazz class
+ * @param <T> T
+ * @return T
+ */
+ public static <T> T getBean(String name, Class<T> clazz) {
+ return getApplicationContext().getBean(name, clazz);
+ }
+
+}
--
Gitblit v1.9.2