From ae44ab32502c6173453a020681ce47da05080d46 Mon Sep 17 00:00:00 2001 From: aoshiguchen <1052045476@qq.com> Date: Wed, 27 Jul 2022 21:05:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=A9=E5=85=85@Configuration=E8=AF=AD?= =?UTF-8?q?=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fun/asgc/neutrino/core/bean/SimpleBeanFactory.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/neutrino-core/src/main/java/fun/asgc/neutrino/core/bean/SimpleBeanFactory.java b/neutrino-core/src/main/java/fun/asgc/neutrino/core/bean/SimpleBeanFactory.java index ea44118d..8770b9d4 100644 --- a/neutrino-core/src/main/java/fun/asgc/neutrino/core/bean/SimpleBeanFactory.java +++ b/neutrino-core/src/main/java/fun/asgc/neutrino/core/bean/SimpleBeanFactory.java @@ -187,7 +187,15 @@ public class SimpleBeanFactory extends AbstractBeanFactory { } } } else if(bean.getType().isAnnotationPresent(Configuration.class)) { - bean.setInstance(ConfigUtil.getYmlConfig(bean.getType())); + if (CollectionUtil.isEmpty(ReflectUtil.getDeclaredFields(bean.getType()))) { + if (bean.isNonIntercept()) { + bean.setInstance(bean.getType().newInstance()); + } else { + bean.setInstance(Aop.get(bean.getType())); + } + } else { + bean.setInstance(ConfigUtil.getYmlConfig(bean.getType())); + } } else { if (ClassUtil.hasNoArgsConstructor(bean.getType())) { if (bean.isNonIntercept()) {