CustomRestAdvice > SPRING_DATA_JPA

본문 바로가기
사이트 내 전체검색

SPRING_DATA_JPA

CustomRestAdvice

페이지 정보

profile_image
작성자 관리자
댓글 0건 조회 507회 작성일 24-06-20 10:18

본문

ae3ded5082570e1fa66dc4e1c1d7b9d9_1718846576_4185.png
 




package web.controller.advice;



import java.util.HashMap;

import java.util.Map;


import org.springframework.http.HttpStatus;

import org.springframework.http.ResponseEntity;

import org.springframework.validation.BindException;

import org.springframework.validation.BindingResult;

import org.springframework.web.bind.annotation.ExceptionHandler;

import org.springframework.web.bind.annotation.ResponseStatus;

import org.springframework.web.bind.annotation.RestControllerAdvice;


import lombok.extern.log4j.Log4j2;


@RestControllerAdvice

@Log4j2

public class CustomRestAdvice {


@ExceptionHandler(BindException.class)

@ResponseStatus(HttpStatus.EXPECTATION_FAILED)

public ResponseEntity<Map<String, String>> handleBindException(BindException e){

log.error(e);


Map<String, String> errorMap = new HashMap<>();


if(e.hasErrors()) {

BindingResult bindingResult = e.getBindingResult();


bindingResult.getFieldErrors().forEach(fieldError -> {

errorMap.put(fieldError.getField(), fieldError.getCode());

});

}


return ResponseEntity.badRequest().body(errorMap);

}

}





[설명]
handleBindException은 컨트롤러에서 BindException이 던져지는 경우 이를 이용해서 JSON 메시지와 400에러(Bad Request)를 전송하게 된다. 

댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

공지사항
자유게시판
질문답변
1:1문의

 

별명 : 터푸가위
주소 : 부산시 동래구 명장로20번길 90
대표 : 박규태
메일 : dancepkt@******.com

접속자집계

오늘
94
어제
398
최대
10,760
전체
278,098
Copyright © dancePKT . All rights reserved.