[SPRING] Spring Restful Jax-RS 주석 지원
SPRINGSpring Restful Jax-RS 주석 지원
나는 class와 web.xml 파일을 가지고있다. 스프링 프레임 워크는 @PATH, @PUT, @Consumes ... 등과 같은 jax-rs 주석을 지원합니까?
다른 말로하면 @RequestMapping 대신 @PATH를 사용할 수 있습니까?
자바:
import org.springframework.stereotype.Controller;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
@Controller
@Path("/register")
public class RegisterServices {
@PUT
@Path("/create")
@Consumes(MediaType.APPLICATION_JSON)
@Produces({"application/json"})
public Response create(@Context HttpServletRequest requestContex,
@HeaderParam("Authorization") String authorization,
String xMsisdn, String param) {}
}
을 포함한다.
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet-mapping>
<servlet-name>Jersey REST Service</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
해결법
-
==============================
1.아니요, 봄에 javax.ws. * 주석을 사용할 수 없습니다. 봄철 휴식을 취할 수 있습니다. 오히려 쉽습니다. 필요한 경우 예제를 제공 할 수 있습니다. (Jersey와 CXF는 JAX-RS 구현도 훌륭하다.)
아니요, 봄에 javax.ws. * 주석을 사용할 수 없습니다. 봄철 휴식을 취할 수 있습니다. 오히려 쉽습니다. 필요한 경우 예제를 제공 할 수 있습니다. (Jersey와 CXF는 JAX-RS 구현도 훌륭하다.)
AFAIK Springsource는 JAX-RS에 구현을 제공 할 생각이 없다. 따라서 JAX-RS에 설명 된 기능을 사용하려면 스프링에서 직접 가져올 수 없습니다. 그러나 봄을 사용하여 나머지 웹 서비스를 개발할 수 있습니다. 그것은 다른 이야기입니다. 그 질문에 대한 의문점이 발견되었습니다.
아래 PaulNUK의 답변에 따라 답변을 명확히해야합니다. 하루 종일 휴식은 명세이며 누군가 먼저 그것을 구현해야합니다.
우리가 주석을 대체 할 수 있는지 여부는 분명히 묻습니다. 클래스 패스에 저지와 같은 외부 의존성을 추가하지 않으면 주석을 대체 할 수 없습니다. 이 사례 구현은 Jersey에서 제공합니다.
따라서 스프링 구현 JAX-RS 주석을 절대로 사용할 수 없습니다.
-
==============================
2.한 클래스에 JAX-RS (Jersey 2 사용) 주석을 넣고 @Component에 주석을 달아 Spring 빈으로 만들면 Spring 종속성 삽입으로 JAX-RS 전체를 지원할 수 있습니다.
한 클래스에 JAX-RS (Jersey 2 사용) 주석을 넣고 @Component에 주석을 달아 Spring 빈으로 만들면 Spring 종속성 삽입으로 JAX-RS 전체를 지원할 수 있습니다.
그래서 Spring은 JAX-RS 자체를 구현하여 바퀴를 재발 명하지는 않았지만 예를 들어 Jersey와 매우 쉽게 통합됩니다.
다음은 간단한 봄 부팅 예제입니다.
http://spring.io/blog/2014/11/23/bootiful-java-ee-support-in-spring-boot-1-2
-
==============================
3.Spring 프레임 워크 만 사용하여 웹 서비스를 개발하고자한다면 Spring은 Spring MVC를 제공한다. Spring MVC에는 고유 한 주석 세트가있다. 예 : "@RequestMapping". Spring MVC는 JAX-RS 원칙을 고수하지도 않는다.
Spring 프레임 워크 만 사용하여 웹 서비스를 개발하고자한다면 Spring은 Spring MVC를 제공한다. Spring MVC에는 고유 한 주석 세트가있다. 예 : "@RequestMapping". Spring MVC는 JAX-RS 원칙을 고수하지도 않는다.
"JAX-RS"를 지원하고 Spring과 통합 될 수있는 다양한 오픈 소스 프레임 워크 (Jersey와 같은)가 있습니다.
그러나 Spring MVC와 Jersey를 비교하고 싶다면 아래의 비교가 필요하다. 스프링 MVC는 원래 웹 서비스를위한 것이 아니라 UI 애플리케이션을위한 것이므로 SPring MVC를 통해 Jersey를 개인적으로 지원합니다.
HTH ...
from https://stackoverflow.com/questions/25543692/spring-restfull-jax-rs-annotation-support by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring / EJB / Mockito ... 프록시에서 내부 호출을 처리하는 방법? (0) | 2019.02.07 |
---|---|
[SPRING] "Spring NamespaceHandler를 찾을 수 없습니다"오류 (0) | 2019.02.07 |
[SPRING] 뷰 레이어에서 spring mvc 컨트롤러의 URL을 찾을 수 있습니까? (0) | 2019.02.07 |
[SPRING] Spring @ 트랜잭션이 트랜잭션을 시작하지 않음 (0) | 2019.02.07 |
[SPRING] Spring MVC에서 Required String 매개 변수가 존재하지 않습니다. (0) | 2019.02.07 |