이번에 여러 사람들과 mybatis로 빠르게 빠르게 변환하는 작업을 진행했습니다.
인터페이스 Mapper를 이용해서 연결하는데, 저 같은 경우는 Mapper 메서드 매개변수에 @Param을 넣지 않으면 아래와 같은 에러가 발생했습니다.
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'barcode' not found. Available parameters are [arg1, arg0, param1, param2]
그런데 몇몇 분들은 @Param이 없어도 잘 동작하더라구요!
왜 그런지 이유를 찾아보니, intelliJ build 설정이 달라서 생긴 일이었습니다..
저와 같이 build and run using 이 IntelliJ IDEA 인 사람은 Mapper 매개변수가 2개 이상일 때, @Param 을 넣어주지 않으면 bindingException이 나고,
build and run using이 Gradle인 사람은 @Param을 넣지 않아도 잘 동작하는 것으로 보입니다~
왜 그런지는 ... 찾아봐야...겠네요 ㅎㅎ
그래서 local run 하면 에러나고, gradle로 빌드 배포한 서버에서는 잘 동작하네요 ㅎㅎ
'개발~ > MyBatis' 카테고리의 다른 글
MyBatis] foreach (0) | 2017.06.07 |
---|