inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Controller와 RestController를 분리해야 하나요?

598

km1104rs9746

1 câu hỏi đã được viết

0

스프링부트 프로젝트를 설계하고 있는데, 지금까지는 그냥 @Controller에 api 요청도 @ResponseBody로 다 때려박는 식으로 코딩을 했습니다.

그런데 api 요청만을 따로 관리하는 @RestController를 생성하는 것이 나중에 유지보수에 더 편할까요?

Controller들의 분리 및 관리를 어떻게 하는 것인지 궁금합니다.

스프링부트 controller 백엔드 restcontroller api 설계

Câu trả lời 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

희찬님의 질문에 대해 답변 드립니다. 스프링부트에서 @Controller@RestController의 사용은 해당 컨트롤러의 역할에 따라 달라질 수 있습니다.

@Controller는 주로 뷰를 반환하는데 사용되는 반면, @RestController는 RESTful 웹 서비스를 구축할 때 사용됩니다. @RestController는 클래스에 @Controller@ResponseBody를 결합한 어노테이션이기 때문에, JSON이나 XML과 같은 형태로 객체 데이터를 HTTP 응답 본문으로 직접 반환할 수 있습니다. 이는 API 요청을 처리하는 데 특히 유용합니다.

즉, 페이지 뷰를 반환하는 로직과 API를 통해 데이터를 주고받는 로직을 구분하여 관리하고 싶다면, @Controller@RestController를 분리하는 것이 유지보수 측면에서 더 효율적일 수 있습니다. 이 방식은 각각의 컨트롤러가 명확한 책임을 가지고 있으므로 코드의 가독성을 높이고, 프로젝트의 구조를 더 명확하게 만드는 데 도움이 됩니다.

따라서, API 요청만을 다루는 부분에 대해서는 @RestController를 사용하는 것이 좋으며, 뷰를 반환해야 하는 경우에는 @Controller를 사용하는 것이 바람직합니다. 이를 통해 각각의 역할에 맞는 컨트롤러를 효과적으로 관리할 수 있습니다.

참고하시면 좋을 정보 링크를 남깁니다.
- Spring Boot Reference Documentation 에서의 @RestController@RequestMapping 어노테이션 설명: MVC Annotations

Claude Code + Supabase 보안 대응 방안 Q&A

0

26

1

POJO에서 Spring Test로 넘어갈 때 누락(해결됨)

0

33

1

백엔드 DB 도구 사용 질문

0

89

2

ai api 선정하기 관련 질문

0

118

2

AI API 이용 금액 질문

0

356

2

경력직 백엔드 개발자 이직도 포폴 중요할까요

0

766

2

데이터 쿼리 질의

0

47

0

서버 플랫폼 선택 관련하여 질문 드립니다.

0

102

2

api폴더 하위의 api.ts들은 언제사용하나요?

0

177

1

DatabaseCleanup 코드입니당 필요한 분들 쓰세요

0

125

1

실무 개발 환경

0

212

1

블로그 api 관련 질문

0

175

2

강의 결과 질문 - SQLD, 데이터베이스 설계, 프로젝트 구축 하여 취업

0

147

1

안녕하세요 선생님. django 배포 문의 드립니다.

1

140

2

모르는 것이 많은데, 이대로 진행해도 괜찮을까요?

0

187

2

"API #3. 실습 Node.js를 이용한 간단한 API구축 ★☆☆"에서 질문입니다.

0

146

2

RESTful API에 대해 설명해주는 강의가 있을까요?

1

251

1

Controller를 통한 페이지 화면이 안 보입니다.

0

245

1

이 방법이 TDD가 맞나요?

0

1109

2

POJO로 개발했는데 비즈니스 로직을 로깅해야 할 경우, 어떻게 해야 할까요?

0

337

1

generate -> add Dependency 이 메뉴가 안보이던데, 어떻게 보이게할까요?

0

355

1

다른 요구사항에 대한 DiscountPolicy 설계 질문

0

264

1

MVC와 API

0

217

1

실무 Asserta 사용여부가 궁금합니다.

0

455

1