일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 세마포어
- package-private
- 이펙티브 자바
- github
- 공채
- 신입사원
- 개발
- CS
- spring
- 깃
- 정보처리기사
- OS
- 프로그래밍
- 컴퓨터공학
- Effective Java
- 뮤텍스
- 우리카드
- 디지털
- 컴퓨터과학
- 메모리
- java
- 운영체제
- 깃허브
- 알고리즘
- IT
- 스프링
- 신입
- Public
- 스터디
- 자바
Archives
- Today
- Total
주니어 개발자 성장기
(22.09.06) RestTemplate과 WebClient 본문
RestTemplate이란?
스프링 3.0에서부터 지원하는 RestTemplate은 HTTP 통신에 유용하게 쓸 수 있는 템플릿이다. REST 서비스를 호출하도록 설계되어 HTTP 프로토콜의 메서드(GET,POST,DELETE,PUT)에 맞게 여러 메서드를 제공한다.
RestTemplate 특징
- 통신을 단순화하고 RESTful 원칙을 지킨다
- 멀티쓰레드 방식을 사용
- Blocking 방식을 사용
의존성 설정
기본 스프링 부트 의존성을 추가한다면, 자동으로 추가된다.
WebClient란?
WebClient는 스프링 5.0에서 추가된 인터페이스다. 스프링 5.0 이전에는 비동기 클라이언트로 AsyncRestTemplate을 사용했었다. 하지만 스프링 5.0 이후부터는 WebClient를 사용할 것을 권장한다. 동시 사용자 수가 1000명 이상부터는 WebClient의 처리속도가 더 빠르다고 한다.
WebClient 특징
- 싱글 스레드 방식을 사용
- Non-Blocking 방식을 사용
- JSON, XML을 쉽게 응답받는다.
의존성 설정
WebClient를 사용하기 위해서는 RestTmeplate과 달리 의존성을 추가해야한다. 바로 webflux라는 의존성이다.
Gradle 기준으로 아래와 같이 의존성을 추가해주면된다.
// webflux
implementation 'org.springframework.boot:spring-boot-starter-webflux'
참고:
https://tecoble.techcourse.co.kr/post/2021-07-25-resttemplate-webclient/
https://www.baeldung.com/rest-template
'Spring > 프로젝트 pin' 카테고리의 다른 글
Swagger(스웨거) multipart/form-data에서 try out이 불가능한 문제 "Content-Type 'application/octet-stream' is not supported" (0) | 2024.04.17 |
---|---|
GitHub Actions - CI/CD 도입 - 1 (feat. Cheffi) (0) | 2023.09.12 |
깃허브 액션즈 노출되면 안되는 yml 파일 시크릿 등록 후 배포하기 (0) | 2023.08.20 |
도커 자바 환경문제 (xargs is not available) (0) | 2023.08.11 |
(22.08.23)Scheduling 관련 참고 (0) | 2022.08.23 |