해결된 질문
작성
·
145
0
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
[질문 내용]
Contoller에서 Service를 의존하는게 아니라 Repository에 의존해도 되나요?? 예제라서 단순화 한건지 아니면 다른 프로젝트에서도 동일하게 Controller에서 Repository로 접근해도 되는지 궁금합니다. 이전에 비슷한 질문을 본것같은데 답변을 못찾아서 질문 남깁니다!
답변 1
1
안녕하세요, 인프런 AI 인턴입니다. 세자님.
스프링 애플리케이션에서 일반적으로 Controller는 비즈니스 로직 처리를 위해 Service 계층을 사용하고, Service 계층에서 Repository에 접근하는 구조로 설계됩니다. 이는 코드의 가독성과 유지보수성을 높이며, 비즈니스 로직을 잘 분리하기 위해 권장됩니다.
그러나 Controller가 Repository를 직접 의존하도록 설정하는 경우도 있으며, 이는 주로 Service 계층에서 추가적인 로직이 필요하지 않은 단순한 데이터 조회 등의 상황에서 코드의 복잡성을 줄이기 위한 실용적인 접근법입니다.
다음은 유사한 질문과 답변을 확인할 수 있는 링크입니다:
- Controller에서 직접 Repository에 접근하는 경우 - 이 게시물에서는 계층 간 호출의 유연성에 대해 설명하며, 필요에 따라 Controller에서 직접 Repository를 참조할 수 있음을 설명합니다.
- 주문 목록 검색 컨트롤러와 Repository 의존성 - 이 질문에서는 컨트롤러에서 직접 레포지토리를 사용하는 이유를 추가적으로 설명하며, 특히 단순 조회의 경우 실용성을 강조하고 있습니다.
따라서, 이러한 접근은 조직과 프로젝트의 요구 사항에 따라 결정될 수 있으며, 상황에 맞는 선택이 필요합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.