spring

myBatis 2.x대 코드

selectList와 selectOne…

정말 오래된 코드이다. 쳐다보고 있으면 더 사용하기 편리한, 임의의 매개변수를 여러개 담아서 보내는 mybatis 3.x대 코드를 왜 놔두고 안쓰는지 궁금할 따름이다

mybatis 3.x대 코드는 최근 책들에서 소개하는 바와 같다

  1. interface를 @Mapper annotation으로 지정해주고 interface에 ret형과 메서드 이름을 정한다
  2. mapper로 동작할 xml파일을 만들고 namespace에 mapper interface의 경로를 포함하여 입력해준다
  3. select, insert, update, delete를 선언하고 id를 interface에 선언한 method 명과 일치시켜준다
  4. resultType(select가 아니면 parameterType)으로 ret받을(select가 아니면 전달인자가 될) 데이터형(혹은 생성클래스. dto)을 입력하고 내부에 sql과 똑같이 쿼리를 입력한다
  5. 매개변수는 #{변수명}으로 사용한다. DAO를 통한 연결이라면, DAO의 변수명을 따른다

※ 매개변수가 2개 이상이라면 DAO에서 변수마다 @Param annotation을 사용해줘야한다

현재 작성중