1. REST(Representational State Transfer)란?
- HTTP URI + HTTP Method이다.
- HTTP URI를 통해 제어할 자원(Resource)을 명시하고 HTTP Method(GET, POST, PUT, DELETE)를 통해
해당 자원(Resource)를 제어하는 명령을 내리는 방식의 아키텍쳐이다.
2. RESTful API란?
RESTful API는 HTTP와 URI기반으로 자원에 접근할 수 있도록
제공하는 애플리케이션 개발 인터페이스(REST의 원리를 따르는 시스템은 RESTful이라고 지칭된다.)
3. 기존의 웹 접근방식과 RESTful API 방식과의 차이점
종류 | 방식 | 기존게시판 | 방식 | Restful API 지원하는 게시판 |
긁읽기 | GET | /list.do?no=100&name=java | GET | /bhs/java/100 |
글등록 | POST | /insert.do | POST | /bhs/java/100 |
글삭제 | GET | /delete.do?no=100&name=java | DELETE | /bhs/java/100 |
글수정 | POST | /update.do | PUT | /bhs/100 |
- 기존의 게시판은 GET, POST만 자원에 대한 CRUD처리하며 URI는 액션을 나타낸다.
- RESTful 게시판은 GET, POST, PUT, DELETE를 모두 사용하여 CRUD를 처리하며 URI는 제어하려는 자원을 나타낸다.
1. URI는 정보의 자원을 표현해야 한다.(리소스명은 동사가 아닌 명사를 사용한다)
2. 자원의 행위는 HTTP 메소드(GET, POST, PUT, DELETE)로 표현한다.
3. 슬래시(/)는 계층 관계를 나타낼 때 사용한다.
4. 소문자를 사용한다.
5. 밑줄(_)은 사용하지 않고 하이픈(-)을 사용한다.
6. 확장자(.txt, .png 등)를 사용하지 않는다.
7. URI의 마지막에 슬래시(/)를 포함하지 않는다.
URI는 정보의 자원만 표현해야 하며, 자원의 행위는 HTTP Method에 명시한다는 것......
'백엔드개발자 > SPRING, JPA 등...' 카테고리의 다른 글
@RequestMapping 이 기억이 안나 (@PostMapping, @GetMapping) (0) | 2022.05.13 |
---|---|
회원등록 API (0) | 2022.04.19 |
즉시로딩 지연로딩 (FetchType.LAZY or FetchType.EAGER) (0) | 2022.03.29 |
JPA 프록시 (0) | 2022.03.18 |
준영속 엔티티? (0) | 2022.03.14 |