Почему Spring RestTemplate не является Бином по умолчанию в Spring? - PullRequest
0 голосов
/ 17 января 2019

При использовании вызовов REST в проекте Spring Boot, и, поскольку я ленивый парень, мои руки быстро переходят к клавиатуре, чтобы написать конфигурацию для RestTemplate Spring, как этот:

  @Bean
  public RestTemplate restTemplate() {
    return new RestTemplate();
  }

Это для того, чтобы не создавать его каждый раз. Почему мы не настроили его как Бин по умолчанию?

1 Ответ

0 голосов
/ 17 января 2019

Почему мы не настроили его как Бин по умолчанию?

Даже если это может немного раздражать, у Spring Boot Team есть веская причина не объявлять RestTemplate как @Bean по умолчанию. Это объясняется в справочной документации :

Поскольку экземпляры RestTemplate часто необходимо настраивать перед использованием, Spring Boot не предоставляет ни одного автоматически настраиваемого компонента RestTemplate.

Однако он автоматически настраивает RestTemplateBuilder, который может использоваться для создания экземпляров RestTemplate при необходимости


Для новой WebClient Spring Boot создает только WebClient.Builder по той же причине (спасибо Darren Forsythe за указание)

...