Описание тега resttemplate
RestTemplate - это центральный класс Spring для доступа по HTTP на стороне клиента. Концептуально он очень похож на JdbcTemplate, JmsTemplate и различные другие шаблоны, присутствующие в Spring Framework и других проектах портфолио.
Это означает, например, что RestTemplate после создания является потокобезопасным и что вы можете использовать обратные вызовы для настройки его операций.
RestTemplate методы
-------------------------------------------------------------
| HTTP | RESTTEMPLATE |
-------------------------------------------------------------
| DELETE | delete(String, String...) |
-------------------------------------------------------------
| GET | getForObject(String, Class, String...) |
-------------------------------------------------------------
| HEAD | headForHeaders(String, String...) |
-------------------------------------------------------------
| OPTIONS | optionsForAllow(String, String...) |
-------------------------------------------------------------
| POST | postForLocation(String, Object, String...) |
-------------------------------------------------------------
| PUT | put(String, Object, String...) |
-------------------------------------------------------------
Ссылка: https://spring.io/blog/2009/03/27/rest-in-spring-3-resttemplate
Обработка ошибок и настройка ошибок
Реализовать и внедрить ResponseError Handler интерфейс в экземпляре RestTemplate - корректно обработать HTTP ошибок, возвращаемых удаленным API.
По умолчанию RestTemplate выдает одно из этих исключений в случае ошибки HTTP:
- HttpClientErrorException - в случае статуса HTTP 4xx
- HttpServerErrorException - в случае статуса HTTP 5xx
- UnknownHttpStatusCodeException - в случае неизвестного статуса HTTP
Можно также настроить bean-компонент Spring RestTemplate
- используя RestTemplateBuilder по умолчанию
- с помощью RestTemplateCustomizer
- создание RestTemplateBuilder