controller, API controller차이
1444
앞서서 만든 프로그램에
apiContrioller가 있고 그냥 controller가 있었는데 이 둘의 차이가 궁금합니다. 또한 이미 만든 show,new,index등의 mustache들도 API controller로 만들수 있는거 아닌가요?(자바스크립트로 요청을 보낸다면)
반대의 경우도 가능할까요?
답변 1
0
@Controller와 @RestController는 스프링 프레임워크에서 컨트롤러를 정의할 때 사용하는 어노테이션입니다. 두 어노테이션은 유사해 보일 수 있지만, 주로 사용되는 목적과 방식에 차이가 있습니다.
- @Controller: 주로 웹 애플리케이션에서 View를 반환하기 위해 사용됩니다. @Controller가 붙은 클래스는 클라이언트의 요청을 처리하고, 그 결과를 뷰 템플릿에 전달하여 사용자에게 HTML 형태로 렌더링된 뷰를 보여주는 역할을 합니다. @Controller를 사용할 때는 @ResponseBody 어노테이션을 메소드에 추가하여 HTTP 응답 본문에 직접 데이터를 반환할 수 있습니다. 그러나, 각 메소드마다 @ResponseBody를 붙여야 하는 번거로움이 있습니다.
- @RestController: @Controller와 @ResponseBody를 합친 것으로, 주로 RESTful 웹 서비스를 개발할 때 사용됩니다. @RestController가 붙은 컨트롤러는 클라이언트의 요청을 처리하고, 데이터를 JSON이나 XML 같은 형태로 HTTP 응답 본문에 직접 반환합니다. 따라서 REST API를 만들 때 편리하며, 별도로 @ResponseBody를 붙일 필요가 없습니다.
요약하자면, @Controller는 주로 뷰(웹피이지)를 반환하는 데 사용되고, @RestController는 RESTful 서비스를 만들 때 데이터(주로 JSON 또는 XML)를 반환하는 데 사용됩니다.
안녕하세요! 실무와 관련되서 질문드립니다!
0
342
1
스프링 백엔드 개발 로드맵
0
456
1
Spring 공부 어떤 강의 순서로 듣는게 좋은가요?
0
649
1
부트스트랩 유료화
1
429
2
학습 방향에 고민이 있습니다.
0
502
1
스프링 선수학습이 필요한가요?
1
514
1
강의 구매에 관한 질문입니다.
0
427
1
spring db기술 강의
0
464
1
학습 코스 질문입니다.
0
480
1
프로젝트를 진행할려면 어느정도로 학습을 해야할까요?
0
470
1
개발을 업으로 삼기 위한 진지한 고민과 포트폴리오 방향에 대한 질문
1
650
1
jpql 무차별 사용에 대해
0
560
1





