일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- graphql
- kafka
- nginx설치
- Java
- php
- GCM 번역
- GCM
- 웹사이트 성능
- 자바스크립트
- 페이스북 번역
- nginx
- Push
- gcm 푸시 번역
- 디자인패턴
- 웹사이트성능
- nginx설정
- APNS
- 푸시 번역
- 성능
- notification
- 도메인 주도 개발
- git
- 카프카
- JPA
- 카프카 트랜잭션
- ddd
- Design Pattern
- 웹사이트최적화기법
- 푸시
- Today
- Total
간단한 개발관련 내용
Java Web Services API 본문
Java Web Services API 개념 되새기기
최근 몇 년 사이에 웹서비스 개발과 관련되어 인터넷의 URI 를 나타내는데 REST-API 라는 architechural 구조를 가진 개념이 많이 사용되고 있다. Java-Spring 기반의 사용자들은 Spring-MVC 를 사용하거나 Spring with jersey 의 조합으로 REST-API 서비스들을 만들어 오고 있었다. 이렇게 개발만하다 보니 왜 spring 과 jersey 를 사용하게 되었지도 잊어버리고 (ㅡ,.ㅡ ... ) 그래서 정리를 해 보려고 한다.
Java Web Service API 의 주요한 2가지 개념이 있다. JAX-RS 와 JAX-WS 이다. 자바 웹 서비스 애플리케이션 코드를 작성하는 두가지 방법이 있는데 바로 잘 아는 Restful 과 SOAP 이다. 이 두개의 주요 API들은 JavaEE6 부터 웹서비스 애플리케이션 개발을 위해 자바 표준으로 정의 되어 있다.
JAX-RS 는 RESTful 웹서비스를 위한 것이며, JAX-RS 애플리케이션을 생성하기 위해 현재 사용중인 주요한 2가지 구현으로는 Jersey 와 RESTeasy 가 있다. (Apache CFX, Restlet 도 있다.)
JAX-WS 는 SOAP 웹서비스를 위한 것이며, JAX-WS를 코드로 작성하는 두가지 방법으로 RPC 와 Document 형태가 있다.
REST 와 SOAP 의 차이를 표를 통해서 나타내면 다음과 같다.
REST |
SOAP |
Architecural style |
Protocol |
REST stands for REpresentational State Transfer |
Simple Object Access Protocol |
REST can use SOAP web services because it is a concept and can use any protocol like HTTP, SOAP. |
SOAP can't use REST because it is a protocol. |
REST use URI to expose business logic. |
SOAP use service interfaces to expose the business logic. |
REST does not define too much standards like SOAP. |
SOAP defines standards to be strictly followed. |
REST permits different data format such as Plain text, HTML, XML JSON etc... |
SOAP permits XML format data only. |
이러한 차이와 과거로부터 현재까지 SOAP 에서 REST로 변화?하게된 흐름을 이해한다면 더 나은 REST-API 개발을 이끌어 낼 수 있을 것이다.