결론: @RequestBody(required = false) 를 사용하여 해결
@RequestBody 사용 예시
일반적으로 @RequestBody를 사용할 때는 해당 필드값이 필수적으로 필요하다는 것을 가정합니다. 하지만 때로는 필수적이지 않은 경우가 있습니다.
@PostMapping("/example")
public ResponseEntity<String> example(@RequestBody ExampleDto exampleDto) {
// ...
}
위 코드에서 ExampleDto는 @RequestBody로 받을 객체입니다. 하지만 이 객체의 필드 중 일부는 선택적으로 필요한 경우가 있을 수 있습니다.
@RequestBody(required = false)를 사용한 예시
이런 경우, @RequestBody(required = false)를 사용하여 해당 필드가 선택적임을 명시할 수 있습니다.
@PostMapping("/example")
public ResponseEntity<String> example(@RequestBody(required = false) ExampleDto exampleDto) {
// ...
}
위 코드에서는 ExampleDto를 @RequestBody로 받되, 필수적이지 않은 필드는 null 값으로 받아옵니다.
이렇게 함으로써 선택적인 필드를 받아야 하는 경우에도 코드를 간결하게 유지할 수 있습니다.
'Programing > Spring Boot' 카테고리의 다른 글
| 코틀린 Querydsl Pageble Sort 동적 정렬 쉽게 사용하기 + 유틸화 (0) | 2023.07.13 |
|---|---|
| 스프링부트 스케줄러가 여러번 실행된다면? @SchedulerLock 사용법 (0) | 2023.07.06 |
| 코틀린 스프링부트 Querydsl 사용 예제 (0) | 2023.07.03 |
| Scanner 테스트코드 작성하기 System.setIn() (0) | 2023.07.02 |
| Querydsl 동적 쿼리 사용하는 2가지 방법 (Builder, where절 파라미터) (0) | 2023.07.01 |