본문으로 바로가기

@MapperScan이란?

category 삽질 정리 2020. 10. 15. 21:51

@MapperScan(basePackages = {"com.naver.reserve.dao.mapper"})

 

@MapperScan annotation을 명시해 준 class는 basePackages로 지정한 곳에 존재하는 @Mapper로 명시된 interface를 스캔한다.

com.naver.reserve.* 이나 com.naver.reserve 이렇게만 적으면 제대로 스캔하지 않고 에러 발생한다..

이것 때문에 엄청난 삽질을 경험할 수 있었드아, 꼭 기억하자!!

 

해결하는 과정 속에서 spring 계층 구조에 대해 심도있게 고민할 수 있는 시간이었다.

그 동안 dao, mapper를 기계적으로 만들기만 하고 분석하지 않았던 나를 반성한다. dao, mapper가 각각 다른 역할 인줄 알았는데 db에 access 한다는 측면은 동일하다는 것!. 장단점을 파악하고 선택가능한 계층인 듯 하다.

 

 

참고 링크 :

twofootdog.github.io/Spring-DAO%EC%99%80-Mapper%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90/

 

[Spring]DAO와 Mapper의 차이점 | 두발로걷는개

두발로걷는개의 Blog

twofootdog.github.io

linux.systemv.pe.kr/mybatis%EC%97%90-dao-%EC%99%80-mapper/

 

Mybatis에 DAO 와 Mapper - Voyager of Linux

SpringFramework 을 이용하다보면 데이터베이스 액세스를 위해서 MyBatis 를 사용하곤 한다. SQL 매퍼라고 불리기도 하는 것인데, DAO 와 Mapper 를 이용하는 방법 두가지에 대해서 알아 본다.

linux.systemv.pe.kr