فهرست منبع

允许在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
     public <T> T registerBean(String beanName, Class<T> c) {
         try{
@@ -84,7 +93,7 @@ public class SpringAware implements ApplicationContextAware, ContextAware {
         if (ObjectUtil.isNull(applicationContext)){
             return null;
         }
-        T t = getBean(clazz);
+        T t = getBean(beanName, clazz);
         if (ObjectUtil.isNull(t)) {
             t = registerBean(beanName, clazz);
         }