code: public static <T> T registerBeanIntoApplicationContext(final ConfigurableApplicationContext applicationContext,
                                                             final Class<T> beanClazz, final String beanId) {
          val beanFactory = applicationContext.getBeanFactory();
          val provider = beanFactory.createBean(beanClazz);
          beanFactory.initializeBean(provider, beanId);
          beanFactory.autowireBean(provider);
          beanFactory.registerSingleton(beanId, provider);
          return provider;
      }
docs: Register bean into application context.
  
  @param <T>                the type parameter
  @param applicationContext the application context
  @param beanClazz          the bean clazz
  @param beanId             the bean id
  @return the type registered