전정프 - 12장 restapi

topics 300-백엔드개발 301 Spring
types 이론 학습
contexts 학교
tags #rest-api #jax-rs #http

RESTAPI

REST

하나의 자원을 여러 형태의 표현으로 전달 가능할 수 있다는 개념
rest클라이언트 : restapi를 사용하는 프로그램

등장 배경

  1. 클라-서버 프로그램 구조의 문제점 등장 : 프로토콜 자체적으로 정의해야함
  2. 그래서 웹사용
  3. 근데 웹은 화면 중심 시스템임
  4. 확장성 좋고 경량 구조인 JSON 주목
  5. restful 개념 조명 -> 프런트엔드 중심 개발

설계 규칙

  • 동사 대신 명사 사용(자원 사용)
  • 상태 변경시 get,쿼리파라미터 사용 ㄴㄴ
  • 복수 명사 사용(집합형 데이터를 다루는 경우)
  • 관계형태의 표현에 하위 리소스 사용
  • 에러 정보 제공( 뭐 에러 메시지나..그런것들..)

JAX-RS

  • Rest 형태를 개발할 수 있는 자바에서 만든 표준 규격(API)
  • 개발 단순화하는 인터페이스 java 애너테이션의 집합체
  • 스프링의 경우 RestController 사용

사용과정

  1. 서비스 등록
    @ApplicationPath 이용 어떤 url을 사용할지 지정해야함
    해당 요청에 대한 구현 클래스를 패키지로 등록해야함.../../daily/assets/스크린샷 2023-12-19 오전 10.27.13.png
  2. API 클래스 구현
    별도의 클래스 상속 ㄴㄴ
    @메서드
    @PATH 로 시작 경로 선택
    @콘텐츠 응답타입 ../../daily/assets/스크린샷 2023-12-19 오전 10.25.22.png