• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

스프링 dao service 매커니즘 질문드립니다.

20.08.13 23:06 작성 조회수 344

0

Controller 에서 객체 빈을 받아 온 것을 Service에 전달 그것을 Dao에 전달 그다음 Mapper로 이어져서 Db와의 연동이 되는 걸로 알고 있는데요.

그런데 Dao 없이 바로 Service에서 받아서 처리 해도 결국 실행은 되는데 굳이 Dao를 집어넣어서 한 번의 컴파일이 더 생기게 하는 이유가 뭔가요? Dao를 굳이 왜 넣어야 하는 지 질문 드립니다.

답변 1

답변을 작성해보세요.

1

관리의 목적입니다. 역할을 나누는 거죠... controller를 요청을 분석하는 역할, service는 개발자가 원하는 다양한 처리, dao 는 데이터 베이스 연동. 이렇게 역할을 나누는 겁니다. 하나의 메서드안에 너무 많은 기능을 구현하면 코드 재사용도 어려워지고 관리도 불편해지기 때문이죠. 유지보수와 코드 재사용성 등을 높히기 위해 역할을 나누어 개발을 하게 됩니다. 실제 프로젝트를 진행하면 이 구조가 더 세분화 되기도 합니다. 소규모이 프로젝트라면 다소 불편하게 느끼실 수도 있지만 수십 수백명이 모여 하는 프로젝트에서는 얘기가 달라집니다. 또 경력이 꽤 되시는 분들은 왜 이렇게 나눠서 해야하는지 뼈저리기 느끼실겁니다.ㅎ