Response데이터와 JSON 포맷 실습

ヨンパン·2024년 4월 19일

1. Client와 Server간의 통신

클라이언트(예: 웹 브라우저, 모바일 앱)가 서버에 요청을 보내면, 서버는 그 요청을 받아 처리한 후 결과를 응답으로 돌려준다. 이때 서버가 보내는 응답은 단순 문자열, 이미지, 영상, HTML 페이지, 또는 JSON 등 다양한 형태가 될 수 있음

2.@Controller와 @RestController의 차이점

@Controller, @RestController

@Controller는 주로 주로 View(HTML, JSP 등)를 반환하는 역할을 하고, @RestController는 데이터(JSON, XML 등)를 반환하는 역할을 한다 . 예를 들어, @RestController에서 단순 문자열을 반환하면 그 문자열 자체가 응답 본문으로 전송되고, 객체를 반환하면 그 객체가 JSON 형식으로 변환되어 응답 본문으로 전송된답니다.

Controller의 경우

@Controller
public class MyController {
    @GetMapping("/hello")
    public String hello(Model model) {
        model.addAttribute("message", "안녕하세요, 여러분!");
        return "hello"; // hello.html 또는 hello.jsp와 같은 View 파일을 반환
    }
}

RestController의 경우

@RestController
public class MyRestController {
    @GetMapping("/hello")
    public String hello() {
        return "안녕하세요, 여러분!"; // 단순 문자열을 반환
    }

    @GetMapping("/user")
    public User getUser() {
        User user = new User(1, "홍길동", "hong@example.com");
        return user; // User 객체를 반환 (JSON 형식으로 변환되어 응답)
    }
}

class User {
    private int id;
    private String name;
    private String email;

    // 생성자, Getter, Setter 생략
}

3.JSON

JSON은 데이터를 표현하는 경량의 데이터 교환 형식으로, 키-값 쌍으로 구성되며 배열과 객체를 포함할 수 있다.

오늘 포스팅은 여기서 마무리하겠습니다. 다음 포스팅에서 또 유익한 내용으로 찾아뵐게요. 그럼 모두 happy coding! 🎉

profile
こんにちは、コミュニケーションしましょう

0개의 댓글