시작은 SpringBoot에서 MyBatis를 maven에 dependency를 추가하는 부분에서 오류가 발생했다.
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.6</version>
</dependency>
이렇게 추가를 했더니 이런 오류가 발생했다.
cannot invoke "com.nana.sport.dao.qua dao.selectall()" because "this.qnadao" is null
저 오류는 bean을 찾지 못했으니 흔히 말하는 NPE (NullPointException)오류가 발생하는 것이였다.
dependency하나 때문에 3시간 정도를 뻘짓을 했는데... 그냥 썼던 프로젝트에서 spring이니까 상관없겠지 하는 멍청한 생각으로 그냥 갖고 온 것이 문제였다.
갖고와야 하는 dependency는 이것!
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
결론은 나는 SpringBoot로 만들고 있기 때문에 관련된 MyBatis dependency를 갖고와야 했던 것이다..
dependency때문에 오류가 발생했기 때문에 똑같은 오류가 발생하지 않도록 작성한다...