Mapper
- MyBatis 매핑xml에 기재된 sql을 호출하기 위한 인터페이스
- Controller > Service > Mapper.java > Mapper.xml
- SQL id를 Mapper.java의 메소드명과 동일하게 작성해줘야 한다.
DAO
- Data Access Object의 약자로, 데이터베이스의 데이터에 접근하기 위해 생성하는 객체
- Controller > Service > DAO > DAOImpl > Mapper.xml
- 인터페이스+클래스 결합
- SqlSession을 등록해줘야 한다.
- DAO 인터페이스와 구현부(impl) 클래스를 생성해줘야한다.
- 네임스페이스 + "."+SQL id로 SQL를 호출해야한다.
- selectOne, insert, delete 등 제공하는 메소드를 사용해야 한다.
- 문자열로 작성하기 때문에 버그가 생길 수 있다.
- IDE에서 제공하는 code assist를 사용할 수 없다.
Ref. https://living-only-today.tistory.com/51