꿀똥벌레
꿀똥벌레 개발 블로그
꿀똥벌레
전체 방문자
오늘
어제
  • 분류 전체보기 (90)
    • JAVA (17)
    • SPRING (14)
    • Elasticsearch (4)
    • GRADLE (2)
    • HTML, CSS (0)
    • JAVASCRIPT (0)
    • GIT (1)
    • Vue.js (1)
    • server (1)
    • Python (0)
    • IT리뷰 (0)
    • 인프라 (6)
    • IOS (21)
    • 디자인패턴 (20)
    • Kafka (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • elasticsearch
  • persistent connection
  • maxConnTotal
  • Index Template
  • java
  • spring integration
  • connectionRequestTimeout
  • SWIFT
  • spring
  • 엘라스틱서치
  • KEEPALIVE
  • Index
  • springintegration
  • persistence connection
  • ES
  • mappings
  • 스프링 인테그레이션
  • 인덱스 템플릿
  • maxConnPerRoute
  • 스프링 인티그레이션

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
꿀똥벌레

꿀똥벌레 개발 블로그

SPRING

Spring RestTemplate

2021. 4. 20. 21:31

RestTemplate 이란

http server 와 통신을 단순화 하고 Restful 원칙을 지키도록 구성된 클래스

json과 xml 을 쉽게 받을 수 있도록 헤더 및 파서가 구성되어 있다.

RestTemplate 작동 순서

  • 어플리케이션이 RestTemplate를 생성하고, URI, HTTP메소드 등의 헤더를 담아 요청한다.
  • RestTemplate 는 HttpMessageConverter 를 사용하여 requestEntity 를 요청메세지로 변환한다.
  • RestTemplate 는 ClientHttpRequestFactory 로 부터 ClientHttpRequest 를 가져와서 요청을 보낸다.
  • ClientHttpRequest 는 요청메세지를 만들어 HTTP 프로토콜을 통해 서버와 통신한다.
  • RestTemplate 는 ResponseErrorHandler 로 오류를 확인하고 있다면 처리로직을 태운다.
  • ResponseErrorHandler 는 오류가 있다면 ClientHttpResponse 에서 응답데이터를 가져와서 처리한다.
  • RestTemplate 는 HttpMessageConverter 를 이용해서 응답메세지를 java object(Class responseType) 로 변환한다.
  • 어플리케이션에 반환된다.

RestTemplate rootUrl 등록 방법

builder.uriTemplateHandler(new RootUriTemplateHandler("http://url....")).build();

- builder.rootUri("http://...").build() 로도 가능하다.

- 위와같이 생성된 RestTemplate 을 이용하면 execute("/path", ....) 으로 rest api 호출이 가능하다.

RestTemplate 추가 설정

  • RestTemplate에 추가적인 설정을 하려면 RestTemplateBuilder.각 설정 메서드 들 사용을 고려해보자.
  • RestTemplate 객체에 전역적인 설정을 하려면 RestTemplateCustumizor 를 구현하여 이용해보자.

(참고: RestTemplate Docs)

(글 작성시참고) https://sjh836.tistory.com/141

'SPRING' 카테고리의 다른 글

Spring Rest Docs 사용법  (0) 2021.05.02
Spring Batch  (0) 2021.04.28
스프링 비동기 타임아웃 설정 변경  (0) 2020.11.23
spring 예외 핸들링  (0) 2020.11.22
SpringBoot 에서 mobile리졸버 추가하기  (0) 2020.10.27
    꿀똥벌레
    꿀똥벌레
    개발자 꿀똥벌레 입니다.

    티스토리툴바