[MyBatis] DAO 인터페이스 만들기
·
spring 스프링
MyBatis를 이용하여 dao를 만들 때에는 public class 가 아닌 public interface 를 이용하여 만들어 준다. 또한, @Repository가 아닌 @Mapper @Annotation을 이용하여 구현한다. 그렇다면 class 와 interface의 차이가 무엇이길래 이렇게 하는 것일까? ▶ Class 사용 장점 쿼리문 실행 전에 넣어줄 매개변수와 쿼리 결과값의 변형을 정의할 수 있다. Namespace를 내 마음대로 둘 수 있다. .xml 파일의 쿼리문 id와 mapper 메소드명을 일치시킬 필요가 없다. 단점 Sqlsession 객체를 주입받아야 하며, 쿼리문 실행 시 항상 호출해야 한다. 쿼리문 호출 시 sqlsession에 .xml 파일의 namespce와 쿼리문 id를 매개..