1. REST 란?
- REpresentational State Transfer의 약자이다. - 2000년 Roy Fielding의 박사학위 논문에서 네트워크 시스템의 구조적 형식을 설명하기 위해 만든 용어 - URI와 HTTP 메소드를 이용해 객체화된 서비스에 접근하는것이다. - Restful WebService는 REST 규칙을 따르는 웹서비스 구현방식이다. |
2. URI 규칙
1) 마지막 문자로 '/'를 사용하지 않는다 2) 가독성을 높이기 위해 데쉬(-) 문자를 사용할 수 있다. 언더바(_)는 사용할 수 없다. 3) 소문자만 사용한다. 4) 확장자를 넣지 않는다. |
3. 리소스 유형(Resource Type)
1) 도큐먼트(Document) - 가장 기본이 되는 형식이고, 데이터베이스의 레코드 같은 것임 예시) http://api.book.com/books/1 2) 컬렉션(Collection) - 도큐먼트의 디렉터리. 즉 도큐먼트 리스트임 예시) http://api.book.com/books 3) 컨트롤러(Controller) - CRUD 이외의 동작 예시) http://api.book.com/books/1/buy |
4. URI 명명 규칙
- CRUD를 나타내는 구문은 사용하지 않을 것 예) getBook, createBook, updateBook 등은 사용 지양할 것 - 도큐먼트는 단수형 명사, 컬렉션은 복수형 명사, 컨트롤러는 동사를 사용할 것 |
5. REST에서 사용하는 HTTP 메소드
- GET : 리소스 상태 조회 - HEAD : 리소스 메타 데이터 - PUT : 리소스 업데이트 - POST : 리소스 추가 - DELETE : 리소스 삭제 |
6. 기타
- 표현(Representation)은 JSON과 XML을 사용하나, 최근에는 JSON을 많이 사용한다.
- REST에 대한 구현 표준은 JAX-RS
- 레퍼런스 구현은 Apache CXF와 Oracle Jersey가 있다.
[글참조]
https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html
'프로그래밍 > J2EE' 카테고리의 다른 글
[Tips] JDBC 쿼리(Query) 타임아웃 설정 (0) | 2021.09.03 |
---|---|
[정보] HttpServletResponse 객체 (0) | 2021.02.08 |
[정보] HttpServletRequest 객체 (0) | 2021.02.08 |
[정보] SSO 구현 방식 (0) | 2019.01.28 |
[정보] PreparedStatement 예제 (0) | 2016.10.07 |