728x90
컨트롤러
import hello.itemservice.web.validation.form.ItemSaveForm;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
@RequestMapping("/validation/api/items")
public class ValidationItemApiController {
@PostMapping("/add")
public Object addItem(@RequestBody @Validated ItemSaveForm form, BindingResult bindingResult) {
log.info("API 컨트롤러 호출");
if (bindingResult.hasErrors()) {
log.info("검증 오류 발생 errors={}", bindingResult);
return bindingResult.getAllErrors();
}
log.info("성공 로직 실행");
return form;
}
}
728x90
'백엔드 > Spring(Boot)' 카테고리의 다른 글
스프링 로그인(쿠키, 세션) (0) | 2021.09.30 |
---|---|
스프링 Bean Validation (0) | 2021.09.29 |
스프링 검증 Validation (0) | 2021.09.24 |
스프링 메시지, 국제화 (0) | 2021.09.23 |
스프링 리다이렉트 (0) | 2021.09.11 |