일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 메이븐
- 자바스크립트
- 디자인 패턴
- pom.xml
- spring 설정 파일
- 자바스크립트 클래스
- spring boot error
- Spring REST API
- Spring
- Oracle
- 전자정부 샘플
- spring 에러
- javascript class
- egov
- 스프링
- 오라클
- 스프링부트 post api
- spring boot post api
- 자바스크립트 class
- spring boot CRUD
- 스프링 에러
- Intellij
- Spring boot
- 인텔리제이
- 전자정부프레임워크
- spring boot rest api
- REST API
- javascript 클래스
- exceptiontransfer
- javascript
- Today
- Total
빵구의 개발 메꾸기
스프링 부트(Spring Boot)를 활용한 PUT REST API 구현 본문
스프링 부트(Spring Boot)를 활용하여 HTTP Method중 하나인 PUT REST API를 구현하는 방법에 대해 알아보자.
@RestController는 해당 class가 RestAPI를 처리하는 Controller로 등록하겠다는 의미에서 사용된다.
<@JsonProperty 활용 방법>
① 카멜 케이스(Camel Case)인 footSize property에 대해 @JsonProperty("foot_size") 스네이크 케이스(Snake Case)로
설정해주게 되면 API 요청 시 보내는 JSON 데이터의 key 값이 foot_size로 들어와도 footSize로 매핑이 된다.
② @PutMapping에 path라는 속성으로 요청이 들어올 세부 URL에 대한 path를 지정해준다.
③ REST API 요청 시 body에 담겨 들어오는 데이터들을 받기 위해 메서드의 파라미터 정보에 대해서 @RequestBody를
넣고 타입은 모델 class로 설정한다.
④ PUT으로 설정한 뒤 요청을 보낼 URL인 localhost:8080/api/test/put-method1을 셋팅한다.
⑤ 데이터를 작성하기 위해 Body를 클릭하고 json형식의 데이터를 보낼 것이기 때문에 Content-Type은 application/json으로 셋팅한다.
⑥ raw를 클릭하고 JSON으로 셋팅한다.
⑦ JSON 형식의 보낼 데이터를 작성한다.
⑧ Send 버튼을 클릭하여 PUT REST API를 호출한다.
⑨ return 받은 값을 보면 API 요청 시 보낸 JSON 데이터의 key 값과 모델 class의 property와 일치하지 않은 foot_size
까지 정상적으로 Body에 담긴 것을 확인할 수 있다.
<@JsonNaming 활용 방법>
① class위에 @JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class)를 설정해주게 되면
VO의 모든 property들이 카멜 케이스(Camel Case)이고 API 요청 시 보내는 JSON 데이터의 key 값이 스네이크 케이스(Snake Case)로 들어와도 매핑이 된다.
② @PutMapping에 path라는 속성으로 요청이 들어올 세부 URL에 대한 path를 지정해준다.
③ REST API 요청 시 body에 담겨 들어오는 데이터들을 받기 위해 메서드의 파라미터 정보에 대해서 @RequestBody를
넣고 타입은 모델 class로 설정한다.
④ PUT으로 설정한 뒤 요청을 보낼 URL인 localhost:8080/api/test/put-method1을 셋팅한다.
⑤ 데이터를 작성하기 위해 Body를 클릭하고 json형식의 데이터를 보낼 것이기 때문에 Content-Type은 application/json으로 셋팅한다.
⑥ raw를 클릭하고 JSON으로 셋팅한다.
⑦ JSON 형식의 보낼 데이터를 작성한다.
⑧ Send 버튼을 클릭하여 PUT REST API를 호출한다.
⑨ return 받은 값을 보면 API 요청 시 보낸 JSON 데이터의 key 값과 모델 class의 property와 일치하지 않은 foot_size
까지 정상적으로 Body에 담긴 것을 확인할 수 있다.
<잘못된 예시>
① 이번엔 REST API 호출 시 보낸 데이터가 메서드 내부에 정상적으로 들어오지 않을 경우를 보여주고자 한다.
메서드의 파라미터 정보에 @RequestBody를 빼고 설정한다.
② Send 버튼을 클릭하여 PUT REST API를 호출한다.
③ return 받은 값을 보면 Body에 아무것도 안담긴 것을 보아 @RequestBody는 반드시 넣어줘야 하는 것을 볼 수 있다.
'BACK-END > SPRING BOOT' 카테고리의 다른 글
스프링 부트(Spring Boot) HttpMediaTypeNotSupportedException 에러 해결 (0) | 2022.05.12 |
---|---|
스프링 부트(Spring Boot)를 활용한 DELETE REST API 구현 (0) | 2022.05.11 |
스프링 부트(Spring Boot)를 활용한 POST REST API 구현 (0) | 2022.05.08 |
스프링 부트(Spring Boot)를 활용한 GET REST API 구현 (0) | 2022.05.08 |
REST API 테스트 (0) | 2022.04.17 |