spring, springboot

BoardDao와 BoardService 인터페이스의 차이

campanula 2023. 9. 6. 11:26

 

  1. BoardDao 인터페이스:
    • DAO는 "Data Access Object"의 약자로, 데이터베이스와 직접 상호작용하는 역할
    • 주로 데이터베이스에서 데이터를 조회, 삽입, 업데이트, 삭제하는 메서드를 선언
    • 데이터베이스 연결 및 SQL 쿼리 실행과 관련된 로직을 포함
    • 데이터베이스 테이블과의 직접적인 상호작용을 담당하므로, 데이터 액세스 레이어의 역할을 수행
  2. BoardService 인터페이스:
    • Service는 비즈니스 로직을 정의하고 이를 실행하는 역할
    • 비즈니스 로직은 데이터베이스 조작 이외의 업무 로직, 예를 들어 데이터의 가공, 검증, 트랜잭션 관리 등을 포함
    • 주로 컨트롤러(Controller)와 DAO 사이에서 중간 역할을 하며, 비즈니스 로직을 담당하는 레이어
    • 비즈니스 로직을 처리하고 결과를 컨트롤러에 반환

요약하면, BoardDao는 데이터베이스와 직접적으로 상호작용하며 데이터 액세스 레이어를 나타내고, BoardService는 비즈니스 로직을 처리하고 이를 컨트롤러에 제공하는 서비스 레이어. 이를 통해 코드의 모듈화와 유지보수성을 향상시킬 수 있으며, 역할과 책임을 분리하여 프로젝트를 더 잘 구성할 수 있습니다.