HATEOAS 적용

HATEOAS 적용

1. HATEOAS는 REST 애플리케이션 아키텍처의 제약 조건 중 하나다.

- ex) API 사용자가 API 관리자로 부터 필요한 모든 리소스의 개별 리소스 URL를 저장하는 것이다.

2. HATEOAS는 주어진 리소스의 관련 링크를 RESTful 서비스에 표시하는 개념을 제공한다.

3. HATEOAS 버전2 이상 부터는 EntityModel를 사용한다.

실습.

1. gradle 의존성 추가 한다.

implementation 'org.springframework.boot:spring-boot-starter-hateoas'

2. 사용자 전체 조회 라는 links를 만든다.

EntityModel model = new EntityModel<>(user); WebMvcLinkBuilder linkTo = linkTo(methodOn(this.getClass()).retrieveAllUsers()); model.add(linkTo.withRel("all-users"));

3. linkTo(methodOn(this.getClass()).retrieveAllUsers()); 메소드를 참조하여 href를 생성.

@GetMapping(value = "/users") public List retrieveAllUsers() { return userDaoService.findAll(); }

4. 결과.

{

"id" : 1 , "_links" : { "all-users" : { "href" : "http://localhost:8086/users" } } }

from http://hyunseo99999.tistory.com/7 by ccl(A) rewrite - 2021-11-30 23:01:24