实现 BeanFactoryAware
@Component
public class RetrofitBeanFactoryAware implements BeanFactoryAware {
@Override
public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
DefaultListableBeanFactory listableBeanFactory = (DefaultListableBeanFactory) beanFactory;
//ClassUtil 糊涂工具包里的
Set<Class<?>> classes = ClassUtil.scanPackageByAnnotation("com.xxx", ABC.class);
for (Class<?> aClass : classes) {
//想要注入的对象
Object service = RetrofitUtils.getService(aClass);
listableBeanFactory.registerSingleton(aClass.getName(), service);
}
}
}