[SPRING] REST API 란❓

수경·2025년 3월 26일

SpringFrameWork

목록 보기
17/24
post-thumbnail

REST API 란❓

Representational State Transfer의 약자로, 하나의 URI가 고유한 리소스를 처리하는 공통 방식을 말한다.

클라이언트가 서버의 자원(Resource)에 대해 요청(Request)을 보내고, 서버가 이에 대한 응답(Response)을 보내는 방식으로 동작한다.

REST 사용하기

  • 스프링 3버전에서는 @ResponseBody 애너테이션을 지원하면서 REST 방식의 데이터 처리를 지원한다.
  • 스프링4 버전에서는 @RestController 애너테이션을 이용해 REST 방식의 데이터 처리를 지원힌디.

@Controller 사용하기

@Controller 를 이용해 Rest 기능 구현

1. pom.xml을 열어 스프링 버전을 4.1.1로 변경한 후 저장한다.

<properties>
		<java-version>1.6</java-version>
		<org.springframework-version>4.1.1.RELEASE</org.springframework-version>
		<org.aspectj-version>1.6.10</org.aspectj-version>
		<org.slf4j-version>1.6.6</org.slf4j-version>
	</properties>

2. 저장 후 Maven Dependencies에서 스프링 4 버전으로 업그레이드되어 있는 것을 확인한다.

3. 클래스 파일을 생성한다.(TestController.java)

JSP 같은 뷰를 반환하는 것이 아니고 JSON, XML 같은 데이터를 브라우저로 전송하는 컨트롤러인 @RestController 를 설정한다.

package com.test.pro11.ex01; // 패키지 선언 (com.test.pro11.ex01 패키지에 속함)

import org.springframework.web.bind.annotation.RequestMapping; // @RequestMapping 애노테이션을 사용하기 위한 import
import org.springframework.web.bind.annotation.RestController; // @RestController 애노테이션을 사용하기 위한 import

@RestController // 이 클래스가 REST 컨트롤러임을 선언 (JSON 또는 문자열을 반환하는 컨트롤러)
@RequestMapping("/test/*") // "/test/*" 경로로 들어오는 요청을 이 컨트롤러에서 처리하도록 매핑
public class TestController { // TestController 클래스 선언

    @RequestMapping("/hello") // "/test/hello" URL로 들어오는 요청을 처리
    public String hello() { // hello() 메서드 정의 (GET 요청을 받을 경우 실행)
        return "Hello REST!"; // 클라이언트에게 "Hello REST!" 문자열을 반환
    }

} // 클래스 종료

➡️ /hello 로 요철 시 브라우저로 문자열을 전송한다.
4. 실행 결과

profile
개발 공부중•••

0개의 댓글