[210802] Annotation - @Responsebody, @RequestBody, @Requestparam

해니·2021년 8월 2일
0

1. Annotation(어노테이션)

  • 사전적 의미: 주석
  • 메타 데이터(데이터를 위한 데이터, 자신의 정보를 담고 있는 데이터)의 비중이 가장 큼
  • 자바 코드에 @를 이용하여 주석처럼 특수한 의미 부여
  • 코드가 간결해지고 재사용 가능해짐

1-1. @Responsebody

  • 실행 흐름: Client -> Request -> Dispatcher Servlet -> Handler Mapping -> Controller (ResponseBody) -> Response -> Client
  • 자바 객체를 HTTP 요청의 body 내용으로 변환/매핑하는 어노테이션
  • 클라이언트가 전송하는 Json 형태의 HTTP Body 내용을 Java Object로 변환시켜줌

*Json 구조

  • 이름과 값의 쌍으로 이루어짐
  • 쉼표(,)로 나열됨
  • 객체(object)는 중괄호({})로, 배열(array)은 대괄호([])로 둘러쌓아 표현

1-2. @RequestBody

  • HTTP 요청의 body 부분이 그대로 전달됨

1-3. @Requestparam

  • HttpServletRequest 객체와 같은 역할
  • 하나의 HTTP 요청 파라미터를 받기 위해서 사용
  • 필수 여부가 true이기 때무에 기본적으로 반드시 해당 파라미터가 전송되어야 함 (전송되지 않으며 400 Error 유발)
  • 옵션: required, defaultValue
  • get 방식 url의 query parameters (물음표 뒤에 = 로 연결된 key value pair 부분)를 받기에 적절함

링크텍스트
링크텍스트

0개의 댓글