@Mapper 어노테이션
440
작성한 질문수 31
선생님 궁금한점이 있습니다!!
MemberMapper 인터페이스를 만들어서 @Mapper 어노테이션을 붙였는데
이는 스프링이 스캔할때 이 MemberMapper의 객체를 만들기 위해서 붙인거라고 알고있습니다.
그래야 이제 MemberController에서 @Autowired로 memberMapper 변수에 DI를 해줄수 있기 때문입니다.
근데 어떻게 인터페이스가 객체로 생성이 되는건가요? 아니면 제가 놓친 부분이 있을까요?
답변 1
1
어떻게 인터페이스가 객체로 생성이 되는건가요?
-> 그쵸 인터페이스는 객체 생성을 할 수 없죠~
MemberMapper 인터페이스와 mybatis-sparing에서 제공해주는 SqlSessionFactoryBean이라는
클래스가 스프링 내부에 서로 연결 된다고 생각하시면 됩니다.
예를 들면 아래처럼 MemberMapper인터페이스의 구현체가 SqlSessionFactoryBean이라고 보면되는데
public class SqlSessionFactoryBean implements MemberMapper{
}
이것처럼 내부에 구현이 된다고 생각하시면 될듯합니다.
그래서 MemberMapper 인터페이스만 있어도 SqlSessionFactoryBean내부의 메서드를 이용할 수가 있는 원리입니다.(상속관계에서 부모 클래스(MemberMapper)만 있으면 하위클래스(SqlSessionFactoryBean) 를 이용해서 동작을 시킬수있는 원리)
스프링은 내부에서 이루어지는 일이 많아서 이해하기 어려운 부분도 있습니다.
조금 이해가 되셨을까요?
ping 연결관련
0
98
1
26강에서 member1에 사진 인서트할때 500 오류가 떠요
0
115
1
안녕하세요, Spring Legacy Project 생성 시 오류 문의드립니다.
0
363
1
32강 spring mvc 안보임
0
273
2
나프2탄 51강 서비스계층 구현하기
0
300
1
32강 WEB MVC프로젝트 만들기 01버전 질문입니다
0
336
1
27강 이미지업로드 질문입니다.
1
185
1
7강 mybatis 에러 질문 드립니다
0
311
1
32강 spring legacy project
0
527
3
마프시리즈가뭐에요??
0
386
1
Spring Legacy Project에 관하여
0
1240
2
뷰 <form => PostMapping 컨트롤러 VO(int 형) 받기 문의 드립니다
0
376
1
한글로 작성한 파일은 사진이 보이지 않습니다.
0
327
1
fileItem.getName().substring(idx+1) 사용 이유가 궁금합니다.
0
341
1
안녕하세요 맥북세팅 질문드려요
0
389
2
19강 ajax통신의 콜백 함수 인자에 대해
0
312
2
나프 2 19강에서 질문있습니다.
0
275
1
제이쿼리 코드지만!
0
327
1
파일 업로드 경로 문의
0
361
1
스프2탄이후 후속강의는 언제나와요?
0
336
1
MVC07 파일 업로드 부분 수강중인데 갑자기 mysql 쿼리가 느려졌습니다..
0
237
1
강의자료
0
447
1
강의 4분 7초, 11분 49초
0
372
1
강의 17:23초
0
327
1





