spring
myBatis 2.x대 코드
selectList와 selectOne…
정말 오래된 코드이다. 쳐다보고 있으면 더 사용하기 편리한, 임의의 매개변수를 여러개 담아서 보내는 mybatis 3.x대 코드를 왜 놔두고 안쓰는지 궁금할 따름이다
mybatis 3.x대 코드는 최근 책들에서 소개하는 바와 같다
- interface를 @Mapper annotation으로 지정해주고 interface에 ret형과 메서드 이름을 정한다
- mapper로 동작할 xml파일을 만들고 namespace에 mapper interface의 경로를 포함하여 입력해준다
- select, insert, update, delete를 선언하고 id를 interface에 선언한 method 명과 일치시켜준다
- resultType(select가 아니면 parameterType)으로 ret받을(select가 아니면 전달인자가 될) 데이터형(혹은 생성클래스. dto)을 입력하고 내부에 sql과 똑같이 쿼리를 입력한다
- 매개변수는 #{변수명}으로 사용한다. DAO를 통한 연결이라면, DAO의 변수명을 따른다