반응형 myBatis4 MyBatis Invalid bound statement (not found) 오류 조치 SpringBoot에서 MyBatis 설정 시 아래와 같은 에러가 발생하는 경우 확인 해야 할 항목 및 조치 방법에 대해서 정리해본다.org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 1. application 설정 파일 application.yml 또는 application.properties 파일에 설정된 mapper xml 파일 경로가 올바르게 되어 있는지 확인한다. 아래 예시 설정을 참조하자.mybatis.mapper-locations=classpath:/mappers/*.xml 2. Mapper인터페이스와 SQL ID아래와 같이 Mapper 인터페이스 메소드명과 SQL 파일의 ID가 동일한지 확인한다. .. 2024. 10. 18. Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 에러 해결 SpringBoot 프로젝트에 MyBatis 적용을 위해서 Gradle에 의존성을 주입하고 실행하니 아래와 같은 에러가 발생했다.Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 확인해보니 SpringBoot 버전과 MyBatis 버전의 문제였다. 필자 같은 경우 SpringBoot는 3.3.4에, MyBatis는 아래와 같이 3.0.1 버전을 찾아서 적용했었다.implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.1' 이 버전을 3.0.3 버전으로 변경해주니 해결 되었다. implementation 'org.mybatis.spring.boot:.. 2024. 10. 9. SpringBoot Log4jdbc 를 사용한 Mybatis 쿼리 로그 출력 SpringBoot에서 log4jdbc를 사용하면 SQL문 로그를 좀 더 가시적으로 출력할 수 있다. SQL문에 들어가는 파라메타도 바인딩이 되어 출력이 되고, 결과도 테이블 형태로 출력되어 보기가 편해진다. 1. log4jdbc 의존성 추가 먼저 아래와 같이 build.gradled에 log4jdbc 라이브러리 의존성을 추가한다. implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16' 2. log4jdbc.log4j2.properties 파일 추가 src/main/resources 루트에 log4jdbc.log4j2.properties 파일을 추가하고 아래와 같이 입력한다. log4jdbc.spylogdelegator.name=ne.. 2022. 6. 5. Mybatis parameterType List foreach insert(Oracle, MySQL) Mybatis에서 foreach를 사용해서 List를 Insert하는 방법 아래와 같이 리스트에 데이터를 담아서 넘기는 경우 List list = new ArrayList(); list.add(new TestVO(1)); list.add(new TestVO(2)); insert("namespace.listInsert", list); Oracle 기준으로는 mybatis 쿼리를 아래와 같이 작성한다. INTO MY_TABLE ( NUM, DATE ) VALUES ( #{item.num}, SYSDATE ) 실행 쿼리는 아래와 같이 실행된다 INSERT ALL INTO MY_TABLE (NUM, DATE) VALUES (...) INTO MY_TABLE (NUM, DATE) VALUES (...) ... S.. 2022. 2. 21. 이전 1 다음 반응형