IBM JAX-RS 개요

JAX-RS(Java™ API for RESTful Web Services)는 REST(Representational State Transfer) 원칙을 사용하는 개발 서비스에 대한 메커니즘을 제공하는 프로그래밍 모델입니다. JAX-RS를 사용하여 RESTful 서비스의 개발이 간소화됩니다.

JAX-RS는 서비스 측 REST 애플리케이션 개발을 단순화하는 인터페이스 및 Java 어노테이션의 콜렉션입니다. JAX-RS 기술을 사용하면 REST 애플리케이션은 다른 분산 시스템 유형과 비교할 때 개발, 이용, 확장을 더 쉽게 수행할 수 있습니다. 이 제품은 REST 기반 서비스 개발을 위한 Java API를 지원합니다. JAX-RS에 대한 IBM® 구현은 JAX-RS 스펙 구현을 제공합니다.

IBM JAX-RS를 사용하는 RESTful 서비스를 개발하려면 기본 REST 원칙에 익숙하고 표준 기술(예: HTTP 및 XML)에 대한 기본 지식이 있다고 가정합니다.

REST 및 JAX-RS

REST라고도 하는 Representational State Transfer는 HTTP, XML, ATOM, HTML과 같은 다중 표준 기술을 사용하는 아키텍처 스타일입니다. REST는 자원 개념을 기반으로 융통성있는 애플리케이션 정의에 사용됩니다. 자원은 URI(Uniform Resource Identifier)로 식별 가능한 웹에서 공유하려는 모든 유형의 데이터입니다.

JAX-RS는 Java Community Process에서 JSR-311로 정의되는 스펙입니다. JAX-RS에서 제공되는 주요 기능 중 일부는 다음과 같습니다.
  • 자원 클래스 및 지원되는 데이터 유형 선언을 위한 어노테이션 콜렉션
  • 애플리케이션 개발자가 런타임 컨텍스트에 대해 액세스를 확보할 수 있도록 하는 인터페이스 세트
  • 사용자 정의 컨텐츠 핸들러 통합을 위한 확장 가능한 프레임워크
Apache Wink 및 JAX-RS의 IBM 구현

Wink는 RESTful 애플리케이션 개발을 위한 경량의 프레임워크를 제공하는 Apache Software Foundation 내에서 개발되는 프로젝트입니다. Wink는 JAX-RS를 사용하여 구현되는 REST 서비스를 지원해서 서버의 자원을 설명합니다. 그렇지만 클라이언트 API도 Wink에서 제공됩니다. 이 클라이언트 API는 JAX-RS 정의 클라이언트 API가 없기 때문에 Wink 런타임 환경에만 특정됩니다.

JAX-RS에 대한 IBM 구현은 기본 Wink 1.1 런타임 환경에 대한 확장입니다. IBM JAX-RS에는 다음 기능이 포함됩니다.
  • JAX-RS 1.1 서버 런타임
  • Apache HttpClient 4.0을 기본 클라이언트로 사용하는 옵션이 포함된 클라이언트 API
  • JSON4J에 대한 기본 제공 엔티티 제공자 지원
  • Apache Abdera 지원에 추가로 Atom JAXB 모델
  • 멀티파트 컨텐츠 지원
  • 사용자 핸들러를 요청 및 응답 처리로 통합
이제 IBM JAX-RS를 사용하여 RESTful 서비스를 구현하는 방법에 대해 알아볼 준비가 되었습니다.
  • JAX-RS 웹 애플리케이션이 신속하게 실행되도록 하는 방법의 예로는 빠른 시작 문서를 참조하십시오.
  • JAX-RS 애플리케이션에 대한 계획 고려사항은 RESTful 서비스를 사용하기 위해 JAX-RS 사용 계획 문서를 참조하십시오.
  • JAX-RS 웹 서비스에 대한 개발, 패키지, 배치에 대한 자세한 정보는 JAX-RS 웹 애플리케이션 구현 문서를 참조하십시오. XML, JSON 또는 Atom 형식을 사용하는 JAX-RS 웹 애플리케이션 구현에 대한 추가 정보가 제공됩니다.