Spring Boot 강좌4 : 데이터를 Client에 반환하는 방법

coldrice99·2024년 9월 30일
0

📌 TIL: 데이터를 Client에 반환하는 방법

오늘은 Spring Boot에서 클라이언트에게 데이터를 반환하는 방법에 대해 학습했다. 특히, 최근 웹 개발에서 JSON 데이터의 중요성과 이를 어떻게 효율적으로 반환할 수 있는지에 대해 알아보았다.

1. JSON 데이터 반환의 필요성

요즘 웹 개발에서는 서버와 클라이언트의 역할이 명확히 분리된다. 이 때문에 서버는 주로 JSON 형태의 데이터를 반환하고, 클라이언트가 이를 활용해 화면을 구성한다. 서버에서 HTML, CSS 등을 직접 반환하는 방식보다 효율적이며, 데이터 교환에 집중할 수 있다는 장점이 있다.

2. Spring에서 JSON 데이터를 반환하는 방법

(1) @ResponseBody 애너테이션

@ResponseBody는 Controller 메서드의 반환값을 HTTP 응답 본문에 직접 담아 보내는 역할을 한다. 이를 활용하면 HTML 대신 JSON 데이터를 반환할 수 있다.

예시 코드:

@GetMapping("/response/json/string")
@ResponseBody
public String helloStringJson() {
    return "{\"name\":\"Robbie\",\"age\":95}";
}

이 방법은 간단하지만, JSON 데이터를 직접 문자열로 작성해야 하므로 불편할 수 있다.

(2) Java 객체를 JSON으로 자동 변환하기

Spring은 Java 객체를 반환하면 이를 자동으로 JSON으로 변환한다. 덕분에 JSON 데이터를 처리할 때 코드가 훨씬 깔끔해진다.

예시 코드:

@GetMapping("/response/json/class")
@ResponseBody
public Star helloClassJson() {
    return new Star("Robbie", 95);
}

이렇게 하면 Star 객체가 JSON 형태로 변환되어 클라이언트에 전달된다.

3. @RestController 애너테이션

@RestController는 클래스 전체에 @ResponseBody가 적용된 효과를 제공한다. 이를 통해 모든 메서드가 JSON 데이터를 반환하게 된다. 덕분에 반복적으로 @ResponseBody를 붙일 필요가 없다.

오늘의 정리

  • JSON 데이터를 반환하는 방법은 @ResponseBody를 사용하거나, @RestController를 활용하여 더 간편하게 처리할 수 있다.
  • Spring Boot는 Java 객체를 자동으로 JSON으로 변환해주기 때문에 데이터 처리에 집중할 수 있다.

profile
서두르지 않으나 쉬지 않고

0개의 댓글