자바/스프링

스프링 Controller, Repositroy, Service

tioon 2023. 5. 30. 17:03
Controller, Repository, Service 분리 이유

-스프링에서 한곳이아닌 여러 파일로 분리후 Controller, Repository, Service등으로 역할을 분리한 이유는 소프트웨어의 구조적인 모듈화와 관심사의 분리를 하기 위한 것입니다. 각각의 역할을 달리가져 서로 다른 책임과 역할을 수행하며, 이를 통해 코드 가독성 ,유지보수성, 확장성을 개선할 수 있습니다.

 

 

 

Controller

  • 사용자의 요청을 처리하고 응답을 반환하는 역할을 담당함
  • 클라이언트와의 상호작용을 처리함.
  • 요청의 라우팅처리 및 Service호출등을 수행함.

Service

  • 비즈니스 로직을 구현하고, 제공하는 역할을 담당함.
  • 컨트롤러의 요청을 받아 해당 요청에 맞는 비즈니스 로직을 처리함.
  • 로직 내부에서 데이터 필요 시 , Repository를 호출해 데이터 처리함.

Repository

  • 데이터베이스나 외부 데이터 와의 상호작용을 처리함.
  • 데이터의 생성, 조회, 수정, 삭제 등의 기능을 제공함.