각 HTTP 메서드에 해당하는 API를 개발하는 내용을 다룹니다.
1. GET API 만들기
GET API는 웹 애플리케이션 서버에서 값을 가져올 때 사용하는 API입니다.
1-1. @RestController
- RestController는 @Controller에 @ReponseBody가 추가된 형태로 RestController의 주용도는 JSON 형태로 객체 데이터를 반환하는것
- 모든 메서드에 @ResponseBody를 추가한것과 동일하다
- 뷰를 반환하지 않는다.
1-2. @RequestMapping
- 클라이언트에서 URL로 들어온 요청을 Controller와 매핑 해주는 어노테이션
- 클래스에 선언시에는 모든 메서드앞에 설정한 URL이 추가된다.
- 주요 옵션
옵션 | 설명 |
value | URL 값으로 매핑 조건을 부여 (default) |
method | HTTP Request 메소드 값을 매핑 조건으로 부여 사용 가능한 메소드는 GET, POST, HEAD, OPTIONS, PUT, DELETE, TRACE |
params | HTTP Request 파라미터 매핑 조건으로 부여 |
1-2-1. @RequestMapping 어노테이션을 사용한 메서드 구현
스프링 4.3 이후에는 @RequestMapping에 따로 method 설정을 해주는것이 아닌 아래의 형태로 많이 사용합니다.
- @GetMapping
- @PostMapping
- @PutMapping
- @DeleteMapping
1-3. @PathVariable을 활용한 GET 메서드 구현
- 매개변수를 URI 자체에 값을 담아 요청하는 방식
- {variable} URI의 값을 매개변수로 받는다.
1-4. @RequestParam을 활용한 GET 메서드 구현
- 위의 방식처럼 URL에 매개변수를 담는 방법이 아닌 쿼리 형식으로 값을 전달 받는 방식
- ?key1=value1&key2=value2 형식의 요청
1-4-1. @RequestParam과 Map을 조합한 GET 메서드 구현
1-5. DTO 객체를 활용한 GET 메서드 구현
DTO는 Data Transfer Object의 약자로 데이터 교환에 활용됩니다. 간략하게 설명하면 클래스 및 인터페이스를 호출하면서 전달하는 매개변수로 사용되는 데이터 객체입니다.
'Springboot' 카테고리의 다른 글
[Springboot] 6. 스프링에서 API를 작성하는 다양한 방법 - DELETE (0) | 2023.02.08 |
---|---|
[Springboot] 5. 스프링에서 API를 작성하는 다양한 방법 - PUT (0) | 2023.02.08 |
[Springboot] 4. 스프링에서 API를 작성하는 다양한 방법 - POST (0) | 2023.02.08 |
[Springboot] 2. 스프링 부트 프로젝트 생성 (0) | 2023.02.08 |
[Springboot] 1. 스프링부트란? (0) | 2023.02.08 |
댓글