jersey RestFull 개발 모델

jersey 를 사용 하기 전에 jersey 의 pom 의존 도 를 추가 해 야 합 니 다.jersey 와 grizzly 2 통합 테스트 의존 도 를 포함 합 니 다.
 
		
			com.sun.jersey
			jersey-server
			1.9.1
		
		
		
			com.sun.jersey
			jersey-grizzly2
			1.9.1
		
		 
               			 com.sun.jersey.jersey-test-framework
               			 jersey-test-framework-grizzly2
              			 1.9.1
               			 test
        		 
		 
			com.sun.jersey
			jersey-client
			 1.16
		

 
 
우선 시동 이 필요 합 니 다.
public class Main{  
     
	private static URI getBaseURI() {
		return UriBuilder.fromUri("http://localhost/").port(9998).build();
	}
	
	public static final URI BASE_URI = getBaseURI();
	
	protected static HttpServer startServer() throws IOException {
		System.out.println("Starting grizzly...");
		ResourceConfig rc = new PackagesResourceConfig("com.resource");//     rest    
		return GrizzlyServerFactory.createHttpServer(BASE_URI, rc);
	}
    public static void main(String[] args) throws IOException {
    	/**
    	 *     SpringContext
    	 *    start    ,       ,           spring  
    	 */
    	SpringUtils.start();
    	
    	/**
    	 *   Grizzly web Server
    	 */
    	HttpServer httpServer = startServer();
    	System.out.println(String.format("Jersey app started with WADL available at "
    	                   + "%sapplication.wadl
Hit enter to stop it...", BASE_URI, BASE_URI)); System.in.read(); httpServer.stop(); } }
 HelloWorldResource.java
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;

// The Java class will be hosted at the URI path "/helloworld"
@Path("/helloworld")
public class HelloWorldResource {

    // The Java method will process HTTP GET requests
    @GET 
    // The Java method will produce content identified by the MIME Media
    // type "text/plain"
    @Produces("text/plain")
    public String getClichedMessage() {
        // Return some cliched textual content
        return "Hello World";
    }
}
HelloWorldResourceTest.java

 
import static org.junit.Assert.*;

import org.junit.Test;

import com.sun.jersey.api.client.WebResource;
import com.sun.jersey.test.framework.JerseyTest;

public class HelloWorldResourceTest extends JerseyTest {

    public HelloWorldResourceTest()throws Exception {
        super("com.resource");");//     rest    
    }

    @Test
    public void testHelloWorld() {
        WebResource webResource = resource();
        String responseMsg = webResource.path("helloworld").get(String.class);
        assertEquals("Hello World", responseMsg);
    }

}

 
이 때 Junit 를 사용 하여 Hello World ResourceTest.java 를 실행 하면 rest 스타일 의 테스트 를 실행 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기