T_era

Client <=> Server 호출 및 응답 요약 본문

Programing/Spring

Client <=> Server 호출 및 응답 요약

블스뜸 2025. 5. 7. 13:38

Client에서 Server로 데이터 전달 방식 (3가지)

  • GET - Query Param, Query String: URL에 파라미터와 값을 명시하여 전달한다.
    • 사용 어노테이션: @RequestParam, @ModelAttribute
    • 예시: http://localhost:8080/tutor?name=wonuk&age=100
  • POST - HTML Form (x-www-form-urlencoded): HTTP 요청 본문에 Key-Value 쌍 형태로 데이터를 인코딩하여 전달한다.
    • 사용 어노테이션: @RequestParam, @ModelAttribute
    • 예시:
      POST /form-data
      content-type: application/x-www-form-urlencoded
      
      key1=value1&key2=value2
  • HTTP Request Body: JSON, TEXT, XML 등 다양한 형식의 데이터를 HTTP 메시지 본문에 직접 담아 전달한다.
    • 사용 어노테이션: @RequestBody
    • 예시: 데이터 (JSON, TEXT, XML 등)

Server (Spring)에서 Client로 HTTP 응답 전달 방식 (3가지)

  • 정적 리소스: 변경 없이 그대로 반환되는 파일 (HTML, CSS, JS, 이미지 등).

 

  • View Template: 서버 측 렌더링 (SSR) 시, 데이터를 기반으로 생성된 HTML View를 반환한다.
    • 사용 어노테이션: @Controller (View 이름을 반환하는 메서드)

  • HTTP Message Body: 응답 데이터를 HTTP 메시지 본문에 직접 담아 반환한다 (주로 REST API).
    • 사용 어노테이션: @ResponseBody, ResponseEntity<Object>

요약

  • 요청 데이터 바인딩 어노테이션: @RequestParam, @ModelAttribute, @RequestBody
  • 응답 방식: 정적 리소스, View Template (@Controller), HTTP Message Body (@ResponseBody, ResponseEntity<Object>)

'Programing > Spring' 카테고리의 다른 글

Layered Architecture (계층형 아키텍처)  (0) 2025.05.08
Custom Exception 처리 심층 분석 및 구현  (0) 2025.05.07
HTTP Message Body 방식  (0) 2025.05.07
View Template 방식  (0) 2025.05.07
정적 리소스 응답 방식  (0) 2025.05.07