관리 메뉴

샐님은 개발중

[섹션4] Spring Boot API 사용 본문

인프런 - 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
반응형