code: private ClassLoader getDefaultClassLoader() {
          ClassLoader classLoader;
          try {
              classLoader = Thread.currentThread().getContextClassLoader();
          } catch (Throwable ex) {
              classLoader = null;
          }
          if (classLoader == null) {
              classLoader = ClassPathResource.class.getClassLoader();
          }
          return classLoader;
      }
docs: Returns the default {@link ClassLoader} to resolve resources. First the thread context {@link ClassLoader} will
  be tried but as a fallback the {@link ClassLoader} that loaded the {@link ClassPathResource} class will be used.
  
  @return default{@link ClassLoader} to resolve resources