MyBatis
- Java Object와 SQL문 사이의 자동 Mapping 기능을 지원하는 Persitence Framwork이다
- SQL을 별도의 파일로 분리해서 관리하며, 객체와 SQL 사이의 parameter mapping 작업을 자동으로 처리해준다
Mapping Err
- Spring Boot에서 MyBatis를 사용하다보면 여러 오류를 발생할 수 있는데 대표적으로 경로 오류가 발생한다
Caused by: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for org.example.mybatis0.select
at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:1097) ~[mybatis-3.5.14.jar:3.5.14]
at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:875) ~[mybatis-3.5.14.jar:3.5.14]
at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:868) ~[mybatis-3.5.14.jar:3.5.14]
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:152) ~[mybatis-3.5.14.jar:3.5.14]
... 52 common frames omitted
- MyBatis를 사용하면, mapper.xml을 작성하게 되는데 여기서의 namespace와 MyBatisRepository의 경로를 똑같이 작성해야한다
public String select(){
return sqlSessionTemplate.selectOne("org.example.mybatis02.select");
}
<mapper namespace="org.example.mybatis02"></mapper>
- 꼭 복잡한 구조일수록 경로를 옳게 썼는지 확인하는 과정이 필요하다
'IntelliJ' 카테고리의 다른 글
[Error] Invalid vound statement(not found) (0) | 2024.11.22 |
---|---|
[Error] java.lang.IllegalArgumentException (1) | 2024.11.21 |
[Error] ClassNotFoundException (0) | 2024.11.19 |
[Error] Error starting ApplicationContext (0) | 2024.11.19 |
[ 의존성 ] 추가 라이브러리 선택 (0) | 2024.11.19 |