인프런 - Spring Boot 3.x 를 이용한 RESTful Web
[섹션4] Spring Boot API 사용
샐님
2024. 7. 27. 10:42
728x90
반응형
1. REST API Leevel3을 위한 HATEOAS 설정
HATEOAS - Hypermedia Aas the Engine Of Application State 의 약자로서 현재 사용하고 있는 RESTful의 리소스와 연관되어 또는 호출 가능한 추가적인 자원의 상태 정보를 한꺼번에 같이 제공하는 기능
LEVEL 1 : 서버가 제공할 수 있는 자원, 데이터를 리소스라고 얘기
LEVEL 2: HTTP 에 필요한 메소드 또는 상태코드 등을 적절히 이용해 이런 리소스 제공(PUT, GET, DELETE )
LEVEL 3 : 헤테오스 기능이 추가 연결되어 있는 기능을 얘기 하는데 Hypermedia를 통해 우리가 제공하고자 하는 리소스를 제
// 헤테오스
@GetMapping("/users/{id}")
public EntityModel<User> retrieveUser2(@PathVariable int id){
User user = service.findOne(id);
if(user == null){
throw new UsernotFoundException(String.format("ID [%S] not found", id));
}
EntityModel entityModel = EntityModel.of(user);
//헤테오스 링크작업
WebMvcLinkBuilder linTo = linkTo(methodOn(this.getClass()).retrieveAllUsers());
entityModel.add(linkTo().withRel("all-users")); // all-users -> http://localhost:8088/users
return entityModel;
}
2. Swagger Documentation 구현 - Spring Boot 3.0사용
- 우리가 개발한 사용자 관리 RESTful API 개발자 도움말 페이지를 생성하는 방법
- RESTful 웹 서비스를 개발할 때 설계 , 빌드, 문서와 사용에 관련된 각종 도움말 작업이 필요함, 이렇나 작업을 하기 위해 많이 사용되는 Swagger 라는 오픈소스 프레임 워크를 사용해서 이러한 개발자 도움말 페이지를 생성
Swagger 프로젝트는 API 의 단순한 JSON 표현을 목적으로 개발
1.pom.xml 디펜던시 추가
728x90
반응형