46.2. Basic Cryostat-RS 주석
46.2.1. 개요
RESTful 웹 서비스 구현에 필요한 가장 기본적인 정보는 다음과 같습니다.
- 서비스 리소스의 URI
- 클래스의 메서드를 HTTP 동사에 매핑하는 방법
Cryostat-RS는 이 기본 정보를 제공하는 주석 세트를 정의합니다. 모든 리소스 클래스에는 이러한 주석 중 하나 이상이 있어야 합니다.
46.2.2. 경로 설정
@Path
주석은 리소스의 URI를 지정합니다. 주석은 javax.ws.rs.Path 인터페이스에서 정의하며 리소스 클래스 또는 리소스 메서드를 데코레이팅하는 데 사용할 수 있습니다. 문자열 값은 유일한 매개 변수로 사용합니다. string 값은 구현된 리소스의 위치를 지정하는 URI 템플릿입니다.
URI 템플릿은 리소스의 상대 위치를 지정합니다. 예 46.2. “URI 템플릿 구문” 에 표시된 대로 템플릿에는 다음이 포함될 수 있습니다.
- 처리되지 않은 경로 구성 요소
{
}
로 묶은 매개변수 식별자참고매개변수 식별자에는 기본 경로 처리를 변경하기 위한 정규식이 포함될 수 있습니다.
예 46.2. URI 템플릿 구문
@Path("resourceName/{param1}/../{paramN}")
예를 들어 URI 템플릿 위젯/{color}/{number} 는 위젯s/blue/12 에 매핑됩니다. color
매개변수의 값은 파란색 으로 할당됩니다. number
매개 변수의 값은 12 로 할당됩니다.
URI 템플릿을 전체 URI에 매핑하는 방법은 @Path
주석을 데코딩하는 항목에 따라 달라집니다. 루트 리소스 클래스에 배치되면 URI 템플릿은 트리의 모든 리소스의 루트 URI이며 서비스가 게시되는 URI에 직접 추가됩니다. 주석이 하위 리소스를 데코레이트하는 경우 루트 리소스 URI를 기준으로 합니다.
46.2.3. HTTP 동사 지정
Cryostat-RS는 메서드에 사용할 HTTP 동사를 지정하는 데 5개의 주석을 사용합니다.
-
javax.ws.rs.DELETE는 메서드가
DELETE
에 매핑되도록 지정합니다. -
javax.ws.rs.GET은 메서드가
GET
에 매핑되도록 지정합니다. -
javax.ws.rs.POST는 메서드가
POST
에 매핑되도록 지정합니다. -
javax.ws.rs.PUT는 메서드가
PUT
에 매핑되도록 지정합니다. -
javax.ws.rs.HEAD는 메서드가
HEAD
에 매핑되도록 지정합니다.
메서드를 HTTP 동사에 매핑할 때 매핑이 적합한지 확인해야 합니다. 예를 들어 구매 주문을 제출하려는 방법을 매핑하면 PUT
또는 POST
에 매핑됩니다. GET
또는 DELETE
에 매핑하면 예기치 않은 동작이 발생합니다.