[복습]어노테이션 @Controller 와 @RestController 의 차이

2025. 4. 15. 17:20·JAVA

@Controller는 View(jsp)를 반환하며, 화면에 데이터를 표현할 때는 Model 객체등을 통해 값을 같이 전달합니다.

 

@RestController는 json 이나 xml 을 반환하는 어노테이션입니다.

따라서 json 데이터 등의 데이터를 클라이언트에 직접 반환할 때 사용하는 어노테이션으로, 일반적으로 api 를 주로 다루는 클래스에 사용합니다.

 

일반 컨트롤러에서는 내부적으로 서비스 메소드를 호출합니다. 이후 jsp 페이지를 반환합니다.

Rest 컨트롤러에서는 서비스에서 받아온 메소드를 그대로 클라이언트에 반환합니다.

즉 view 가 아닌 데이터를 직접 return 하는 방식입니다.

 

3줄요약

1. 일반 컨트롤러 어노테이션은 view 를 반환 -> 서버측에서 화면을 렌더링하는 역할

2. RestController 어노테이션은 api 쪽을 관리하므로 데이터를 반환 -> 클라이언트와 데이터를 주고받는 역할

3. 서로 반환하는 값이 다르므로 경로를 다르게 설정해서 각 역할에 맞는 코드 관리를 하는게 좋음.

 

 

 

'JAVA' 카테고리의 다른 글

[JVM] JVM이 무엇일까?  (0) 2025.04.16
[복습] GetMapping 과 RequestMapping 의 차이  (0) 2025.04.15
프레임워크란 무엇일까?  (0) 2025.03.28
[JAVA] MVC 패턴과 JDBC 를 활용한 데이터베이스 연결  (1) 2025.01.31
[JAVA] Socket으로 간단히 구현하는 클라이언트-서버 통신  (0) 2025.01.21
'JAVA' 카테고리의 다른 글
  • [JVM] JVM이 무엇일까?
  • [복습] GetMapping 과 RequestMapping 의 차이
  • 프레임워크란 무엇일까?
  • [JAVA] MVC 패턴과 JDBC 를 활용한 데이터베이스 연결
동준1234
동준1234
공부 기록
  • 동준1234
    dongjundev
    동준1234
  • 전체
    오늘
    어제
  • GitHub
    • 분류 전체보기 (150)
      • 일상 (1)
      • 복습 및 회고록 (26)
      • Spring (17)
      • JAVA (32)
      • kubernetes (1)
      • Front-End (13)
      • Server (11)
      • SQL (20)
        • JDBC (1)
      • 자격증 (7)
        • 정보처리기사 필기 준비 (6)
        • 정보처리기사 실기 준비 (0)
        • SQLD (1)
      • project (18)
        • 백준 및 코딩테스트 공부 (6)
        • 대학교 캡스톤 디자인 (6)
        • 4학년 캡스톤 디자인 및 전시회 (3)
      • 네트워크 (3)
      • AI 머신러닝 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    JavaScript
    jQuery
    react
    개발자
    프론트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
동준1234
[복습]어노테이션 @Controller 와 @RestController 의 차이
상단으로

티스토리툴바