[Spring Boot]10.REST Full API사용하기
※REST Full(REpresentational State Transfer)
잘 표현된 HTTP URI로 리소스를 정의하고 HTTP메서드로 리소스에 대한 행위를 정의합니다. 리소스는 JSON,XML과 같은 여러가지 언어로 표현할 수 있습니다.
> 표현규칙
URI는 명사를 사용해야한다. (예) DELETE /members/1)
슬래시(/)로 계층 관계를 나타낸다.(예) GET /dogs/jindo)
URI의 마지막에는 슬래시를 사용하지 않는다.
URI는 소문자로만 작성한다.
가독성을 높이기 위해 하이픈(-)을 사용할 수는 있지만 밑줄(_)은 사용하지 않는다.
> 컨트롤러 규칙
- 위와 같이 일반적으로 쓰는 Spring URI는 insert나update를 명시하지만 REST API를 쓰게 되면 짧아지게되면서 쓰이게 된다.
>기존에는 주소만 입력을 했지만RESTFul을 쓰게 되면 주소와 요청방법, 이 두가지 속성은 꼭 지정해야한다.
- 기존
- RESTful API적용
> 아래와 같이 요청방법은 여러가지로 되어있어서 선택해 주면 된다.
> html에서 이동 및 수정/저장/삭제시 아래와 같이 form에 method설정을 해주면된다.
html은 post,get만 지원이 되기때문에 put,delete와 같은 기능을 사용하기 위해서는 HiddenHttpMethodFilter를 사용해야한다.(HiddenHttpMethodFilter는 스프링2.1x이상 부터 적용되어있음)
수정,삭제 부분은 <input type="hidden" id="method" name="_method"/>에 value값으로 지정을 해줘야한다.(해당 input값에 put값으로 지정해 주면 RequestMethod.PUT의 이름을 값을 가진 URI를 호출한다.)
> 아래와 같이 REST API를 적용하려면 아래와 같이 @RestController를 사용하여 응답값만 받게끔 해준다.
위와 같이 한 다음 포스트맨을 이용해 JSON형식으로 reuest,respon해 주는지 테스트해주면 된다.
댓글을 작성해보세요.