瀏覽代碼

允许在SpringAware层面上进行同一组件的多注册

everywhere.z 2 年之前
父節點
當前提交
7c6c0bb024
共有 1 個文件被更改,包括 10 次插入1 次删除
  1. 10 1
      liteflow-spring/src/main/java/com/yomahub/liteflow/spi/spring/SpringAware.java

+ 10 - 1
liteflow-spring/src/main/java/com/yomahub/liteflow/spi/spring/SpringAware.java

@@ -52,6 +52,15 @@ public class SpringAware implements ApplicationContextAware, ContextAware {
         }
         }
     }
     }
 
 
+    private <T> T getBean(String beanName, Class<T> clazz) {
+        try{
+            T t = applicationContext.getBean(beanName, clazz);
+            return t;
+        }catch (Exception e){
+            return null;
+        }
+    }
+
     @Override
     @Override
     public <T> T registerBean(String beanName, Class<T> c) {
     public <T> T registerBean(String beanName, Class<T> c) {
         try{
         try{
@@ -84,7 +93,7 @@ public class SpringAware implements ApplicationContextAware, ContextAware {
         if (ObjectUtil.isNull(applicationContext)){
         if (ObjectUtil.isNull(applicationContext)){
             return null;
             return null;
         }
         }
-        T t = getBean(clazz);
+        T t = getBean(beanName, clazz);
         if (ObjectUtil.isNull(t)) {
         if (ObjectUtil.isNull(t)) {
             t = registerBean(beanName, clazz);
             t = registerBean(beanName, clazz);
         }
         }