1. 程式人生 > >Mybatis——Caused by: java.lang.ClassNotFoundException: Cannot find class: BaseResultMap的解決辦法

Mybatis——Caused by: java.lang.ClassNotFoundException: Cannot find class: BaseResultMap的解決辦法

昨天自己搭SSM框架,執行的時候總是報下面這一系列的錯
 

Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'BaseResultMap'.  Cause: java.lang.ClassNotFoundException: Cannot find class: BaseResultMap
    at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:109)
    at org.apache.ibatis.builder.BaseBuilder.resolveAlias(BaseBuilder.java:115)
    at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:92)
    ... 80 more
Caused by: java.lang.ClassNotFoundException: Cannot find class: BaseResultMap
    at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:188)
    at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:87)
    at org.apache.ibatis.io.Resources.classForName(Resources.java:250)
    at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:105)
    ... 81 more

自己整了很久,發現是resultMap導致的。

我的XML配置檔案如下

  <resultMap id="BaseResultMap" type="com.qcbylearn.entitys.testClass" >
   
    <result column="book_id" property="book_id" jdbcType="BIGINT" />
    <result column="name" property="name" jdbcType="VARCHAR" />
 	 <result column="number" property="number" jdbcType="BIGINT" />
  </resultMap>
<select id="getAllBook" resultType="BaseResultMap"  parameterType="java.lang.Long">
	 select 
    <include refid="Book_Column_List" />
    from book
</select>

上下的resultMap要對應,而我在select中寫的是resultType。

只要select中的resultType改為resultMap之後就不再報錯。

<select id="getAllBook" resultMap="BaseResultMap"  parameterType="java.lang.Long">
	 select 
    <include refid="Book_Column_List" />
    from book
</select>

希望大家少遇bug,多點休息和學習時間~~~~

Biu~~