응답값(Response) 공통 처리

다음은 X2BEE 응답값 Response 공통 처리에 대해 설명합니다.

공통처리 설명과 설정값 및 커스텀 어노테이션 사용 방법과 예제입니다.


공통처리 설명

응답값 공통 처리는 다음과 같습니다.

  • String, int, List, Map, Model 객체 등 → 공통 모델인 Response의 payload에 Set → Response 객체를 ResponseEntity에 포함하여 반환

  • Response → Response 객체를 ResponseEntity에 포함하여 반환

  • ResponseEntity 객체인 경우 그대로 반환

설정값으로 사용

설정값으로 사용할 경우 application.yml 파일을 이용합니다.

응답값을 공통 모델인 Response 모델로 공통 처리하는 설정은 기본값이 true로 설정되어 있습니다.

해당 설정을 사용하지 않고 싶을 경우에는 application.yml 파일에서 global.response.advice 설정을 false로 줍니다.

circle-exclamation

예시 (application.yml):

global:
  response:
    advice: true

커스텀 어노테이션 사용

아래 두 개의 커스텀 어노테이션을 사용하여 특정 컨트롤러/핸들러에서 공통 응답 처리 동작을 제어할 수 있습니다.

  • @EnableResponseBodyAdvice — 해당 핸들러에 대해 응답값 공통 처리를 강제로 적용

  • @DisableResponseBodyAdvice — 해당 핸들러에 대해 응답값 공통 처리를 비활성화

1

Enable 예제

@EnableResponseBodyAdvice를 사용한 예제:

설명: @EnableResponseBodyAdvice을 사용할 경우 설정값이 false이더라도 어노테이션을 따라 응답값 공통 처리가 적용되어 최종적으로 Response 형태로 반환됩니다.

2

Disable 예제

@DisableResponseBodyAdvice를 사용한 예제:

설명: @DisableResponseBodyAdvice을 사용할 경우 설정값이 없거나 true이더라도 어노테이션을 따라 응답값 공통 처리가 되지 않아 List 형태로 반환됩니다.

마지막 업데이트