[Spring Boot] GET API - 매개변수 없는 메서드

박현아·2025년 2월 25일
0

Spring Boot

목록 보기
2/5

*<스프링 부트 핵심 가이드>에 나온 내용을 실습해보는 포스팅입니다.

🎃 GET API 란?

GET API란 클라이언트가 서버로부터 데이터를 요청할 때 사용하는 API이다. RESTful API에서 HTTP 요청 방식 중 하나인 GET 메서드를 사용하여 데이터를 가져오는 데 활용된다.

🎃 GET API 특징

  1. 데이터 조회(Read)
    서버에서 데이터를 가져오기만 하며, 데이터를 변경하지 않음.
  2. 요청 데이터(Query Parameter, Path Variable 활용)
    Query Parameter: ?key=value 형식 (/users?name=kim)
    Path Variable: /{value} 형식 (/users/1)
  3. 멱등성(Idempotency)
    같은 요청을 여러 번 보내도 응답 결과가 변하지 않음.
  4. 캐싱 가능
    응답 결과가 변하지 않으면 브라우저나 CDN에서 캐싱하여 성능 최적화 가능.

👩‍💻 GET API 실습

1 - GetController 클래스 만들기

controller 패키지에 GetController 클래스를 만들어준다

2 - 매개변수 없는 메서드 작성

package com.springboot.api.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
@RequestMapping("/api/v1/get-api")
public class GetController {

	@GetMapping("/hello")
	public String getHello() {
		return "Hello World";
	}

	@GetMapping("/name")
	public String getName() {
		return "Falture";
	}

}

✔️ 스프링 4.3버전 이전에는
@RequestMapping("/hello", method = RequestMethod.GET)
이렇게 어노테이션을 썼지만, 지금은
@GetMapping, @PostMapping, @PutMapping, @DeleteMapping
으로 쓴다.
✔️ 위에 쓴 @RequestMapping("/api/v1/get-api") 는 아래의 모든 메서드에 적용된다. 호출 url이 /api/v1/get-api/~~~ 이런 형태가 된다.
✔️ @RestController 란?
- @RestController는 @Controller + @ResponseBody 역할을 한다.
- REST API 개발 시 자동으로 JSON 반환되므로 코드가 간결해진다.
- 불필요한 뷰 렌더링을 방지하고, RESTful API에 최적화된 컨트롤러를 만들 수 있다.

3 - 동작 테스트 : Talend API Tester 사용

STS에서 해당 프로젝트 Run 후,


GET -
http://localhost:8080/api/v1/get-api/hello 로 요청하면 Hello World가 잘 나오는 것을 확인할 수 있다.
(http! 로 바꾸는 거 잊지 말기)

GET -
http://localhost:8080/api/v1/get-api/name 도 잘 나온다.

0개의 댓글