ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Spring RESTful
    혼자서 공부하기/Spring 2017. 10. 8. 03:40
    728x90
    반응형
    SMALL


    ● REST ( Representational State Transfer)


       - 하나의 URI는 

         하나의 고유한 Resource를 대표하도록 설계

       - 특정 URI는 각각 상응하는 데이터를 의미

       - 데이터에 대한 처리는 HTTP 통신( GET/POST/PUT/DELETE) 과 같은 추가적인 정보를 통해 결정



    ● REST Service : 특정 URI를 통해서 사용자가 원하는 정보를 제공하는 방식


    ● RESTful API : REST 방식으로 제공되는 외부 연결 URI


    ● REST 와 HTTP methods 

       - GET : 리소스 또는 리소스 컬렉션을 얻어옴

       - POST : 리소스 생성

       - PUT : 리소스 업데이트

       - DELETE : 리소스 삭제


    ● REST Annotation - @ResponseBody

       - 메소드 또는 메소드의 리턴타입에 사용되는 Annotation

       - @Controller Annotation 이 있는 클래스에서 정의된 메소드 리턴타입에 @ResponseBody Annotaion 을 사용하면, 클라이언트로 JSP 가 아닌 데이터 자체가 메시지를 가공해서 클라이언트로 전달됨

       - Spring 3 부터 지원


    ● REST Annotation - @RestController

       - Controller 클래스에 사용되는 Annotation

       - JSP 와 같은 View를 만들어내는것이 목적이 아닌, REST 방식의 데이터 처리를 위한 Controller Class 임을 선언하는 Annotation

       - @RestController의 모든 Controler Method들은 @ResponseBody Annotation 없이 View가 아닌 데이터 자체를 클라이언트(=브라우저)에게 서비스(=리턴) 하는 Method가 됨.

       - Spring 4 부터 지원


    ● Java 플랫폼에서는 JSR-311(JAX-RS : The Java API for RESTful Web Service) 스펙을 제공함으로써 Java Annotation 을 이용한 RESTful 웹서비스를 구현할 수 있게 도와주고 있다. 

       - Apache CXF , Jersey, Restlet  과 같은 구현체를 이용하면 REST기반 웹 서비스를 만들 수 있다. 


    ● Spring Web MVC 는 JSR-311을 따르지 않지만, REST 기반의 웹서비스 개발에 필요한 기능 대부분을 구현하고 있다.

       - 간단하게 하나의 자원(Resources)을 여러개의 Representation(JSON/XML/ATOM/RSS 등)으로 표현할 수 있다.

       - 브라우저에서 지원하지 않는 PUT/POST 요청을 처리할 수 있는 등 여러가지 기능을 가지고 있다.

       - 무엇보다도 스프링이 지원하는 강력한 기능들을 사용할수 있다.


    728x90
    반응형
    LIST

    '혼자서 공부하기 > Spring' 카테고리의 다른 글

    스프링의 특징  (1) 2016.03.15

    댓글

Designed by Tistory.