ApplicationContext: getBeansTypes()
获取所有实现类,
样例: https://blog.csdn.net/Taobaojishu/article/details/109792558
如下基于策略模式+工厂方法自动注册所有的实现类,避免因新增实现类而修改工厂方法
@Component
xxFactory implements InitializingBean, ApplictionContextAware {
@Override public void afterProperties() { appcContext.getBeansOfType(FormSubmitHandler.class) .values() .forEach(handler -> FORM_SUBMIT_HANDLER_MAP.put(handler.getSubmitType(), handler));