针对接口bean的优化,若接口有且仅有唯一实现类,则采用该实现类作为实现
This commit is contained in:
@@ -81,13 +81,14 @@ public class SimpleBeanFactory extends AbstractBeanFactory {
|
||||
if (null != order) {
|
||||
beanWrapper.setOrder(order.value());
|
||||
}
|
||||
// ApplicationRunner、Configuration、Interceptor、Filter、ExceptionHandler、ResultAdvice默认不拦截
|
||||
// 默认不拦截
|
||||
if (ApplicationRunner.class.isAssignableFrom(type) ||
|
||||
type.isAnnotationPresent(Configuration.class) ||
|
||||
Interceptor.class.isAssignableFrom(type) ||
|
||||
Filer.class.isAssignableFrom(type) ||
|
||||
ExceptionHandler.class.isAssignableFrom(type) ||
|
||||
ResultAdvice.class.isAssignableFrom(type)
|
||||
ResultAdvice.class.isAssignableFrom(type) ||
|
||||
BeanFactoryAware.class.isAssignableFrom(type)
|
||||
) {
|
||||
beanWrapper.setNonIntercept(true);
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
package fun.asgc.neutrino.core.util;
|
||||
|
||||
import fun.asgc.neutrino.core.annotation.Component;
|
||||
import fun.asgc.neutrino.core.annotation.NonIntercept;
|
||||
import fun.asgc.neutrino.core.bean.BeanFactory;
|
||||
import fun.asgc.neutrino.core.bean.BeanFactoryAware;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -36,7 +35,6 @@ import java.util.List;
|
||||
* @date: 2022/6/16
|
||||
*/
|
||||
@Slf4j
|
||||
@NonIntercept
|
||||
@Component
|
||||
public class BeanManager implements BeanFactoryAware {
|
||||
private static volatile BeanFactory beanFactory;
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
package fun.asgc.neutrino.core.bean.test1;
|
||||
|
||||
import fun.asgc.neutrino.core.annotation.*;
|
||||
import fun.asgc.neutrino.core.base.GlobalConfig;
|
||||
import fun.asgc.neutrino.core.bean.BeanMatchMode;
|
||||
import fun.asgc.neutrino.core.bean.SimpleBeanFactory;
|
||||
import fun.asgc.neutrino.core.launcher.NeutrinoLauncher;
|
||||
@@ -79,6 +80,8 @@ public class Launcher {
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
GlobalConfig.setIsPrintGeneratorCode(true);
|
||||
|
||||
NeutrinoLauncher.run(Launcher.class, args).sync();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user