[java] Apache Wink의 사용 예시

Apache Wink은 Java에서 RESTful 웹 서비스를 구현하는 데 사용되는 라이브러리입니다. 이 블로그 포스트에서는 Apache Wink를 사용하여 간단한 RESTful 웹 서비스를 구현하는 예시를 살펴보겠습니다.

Apache Wink 라이브러리 추가하기

먼저 Maven을 사용하여 Apache Wink 라이브러리를 프로젝트에 추가해야 합니다. 아래는 pom.xml 파일에 필요한 의존성을 추가하는 예시입니다.

<dependencies>
    <dependency>
        <groupId>org.apache.wink</groupId>
        <artifactId>wink-server</artifactId>
        <version>1.4</version>
    </dependency>
</dependencies>

의존성을 추가한 후 Maven을 통해 프로젝트를 업데이트합니다.

RESTful 서비스 구현하기

이제 Apache Wink를 사용하여 간단한 RESTful 서비스를 구현해보겠습니다. 아래는 간단한 예시 코드입니다.

import javax.ws.rs.*;
import javax.ws.rs.core.Response;

@Path("/hello")
public class HelloService {
    
    @GET
    @Produces("text/plain")
    public String sayHello(){
        return "Hello, World!";
    }
    
    @POST
    @Consumes("text/plain")
    public Response createHello(String message){
        // 처리 로직
        return Response.status(201).entity("Hello created").build();
    }
}

위의 코드에서는 /hello 경로에 대한 GET 및 POST 요청을 처리하는 간단한 RESTful 서비스를 구현했습니다.

서비스 노출하기

마지막으로, 구현한 서비스를 노출하기 위해 web.xml 파일에 Wink 서블릿을 등록해야 합니다.

<servlet>
    <servlet-name>WinkServlet</servlet-name>
    <servlet-class>org.apache.wink.server.internal.servlet.RestServiceServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>WinkServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
</servlet-mapping>

위와 같이 설정하면 /services/* 경로로 들어오는 요청을 Apache Wink 서비스로 라우팅할 수 있습니다.

이제 Apache Wink를 사용하여 간단한 RESTful 웹 서비스를 구현하는 방법에 대해 알아보았습니다.

참고 자료