◇ PART · MVC

DAO / Repository

Spring MVC — 읽기 자료

📍 지금 어디를 만지고 있나요?
브라우저
Spring MVC
DB

핵심 용어

DAO (Data Access Object)데이터 접근 객체. 전통적 명칭.
Repository같은 역할의 Spring 권장 명칭. @Repository 어노테이션 사용.

1. 문제

전 차시까지의 답답함

Service 에서 SQL 도 같이 쓰면 안 되나? — 안 됨. 변경 사유가 다르므로 분리.

2. 새 도구

DAO/Repository — 창고 관리자

식재료 창고(DB)에 접근하는 일만 전담. SQL 을 작성하고 결과를 객체로 변환.

3. 코드 — BoardMapper v5 형태

// src/main/java/com/smhrd/mapper/BoardMapper.java
package com.smhrd.mapper;

@Mapper
public interface BoardMapper {
    List<Board> selectList();
    Board       selectOne(int num);
    void        insert(Board b);
    void        update(Board b);
    void        delete(int num);
}

4. 정리

5. Before / After

전 차시 끝

Service 에서 SQL 도 같이 쓰면 안 되나? — 안 됨. 변경 사유가 다르므로 분리.

이번 차시 끝

데이터 접근 책임이 한 곳에 모인다.