org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: org.apache.ibatis.builder.IncompleteElementException: Could not find result map org.fkit.mapper.UserMapper.
### Cause: org.apache.ibatis.builder.IncompleteElementException: Could not find result map org.fkit.mapper.UserMapper.
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:136)
at org.fkit.test.SelectStudentTest.main(SelectStudentTest.java:18)
Caused by: org.apache.ibatis.builder.IncompleteElementException: Could not find result map org.fkit.mapper.UserMapper.
at org.apache.ibatis.builder.MapperBuilderAssistant.getStatementResultMaps(MapperBuilderAssistant.java:346)
at org.apache.ibatis.builder.MapperBuilderAssistant.addMappedStatement(MapperBuilderAssistant.java:290)
at org.apache.ibatis.builder.xml.XMLStatementBuilder.parseStatementNode(XMLStatementBuilder.java:109)
at org.apache.ibatis.session.Configuration.buildAllStatements(Configuration.java:788)
at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:719)
at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:714)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147)
... 3 more
Caused by: java.lang.IllegalArgumentException: Result Maps collection does not contain value for org.fkit.mapper.UserMapper.
at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:888)
at org.apache.ibatis.session.Configuration.getResultMap(Configuration.java:640)
at org.apache.ibatis.builder.MapperBuilderAssistant.getStatementResultMaps(MapperBuilderAssistant.java:344)
... 9 more
uj5u.com熱心網友回復:
resultType應該寫對應的全路徑名如:com.test.dao.Useruj5u.com熱心網友回復:
換成BaseResultMap試試呢uj5u.com熱心網友回復:
resultMap 要配置對應物體類全類名 而不是Mapper的全類名uj5u.com熱心網友回復:
可是我是回傳的是List集合,不是一個類,寫了全路徑也是這個報錯uj5u.com熱心網友回復:
你是要回傳一個 List<Map>的資料? 把map 換成 map的包路徑map --> java.util.Map
uj5u.com熱心網友回復:
換了mao包路徑也是報錯,uj5u.com熱心網友回復:
### Cause: org.apache.ibatis.builder.IncompleteElementException: Could not find result map org.fkit.mapper.UserMapper.我估計是 寫成 resultMap="org.fkit.mapper.UserMapper" 了。 應該用resultType = "org.fkit.mapper.UserMapper"
你還是把你的代碼放上來看看吧
uj5u.com熱心網友回復:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace指用戶自定義的命名空間。 -->
<mapper namespace="org.fkit.mapper.UserMapper">
<!-- select操作
resultType="map"表示回傳的是一個Map物件
使用列名做key,值做value -->
<select id="selectUser" resultType="map">
SELECT * FROM TB_USER
</select>
<resultMap id="userResultMap" type="org.fkit.domain.User">
<id property="id" column="user_id"/>
<result property="name" column="user_name"/>
<result property="sex" column="user_sex"/>
<result property="age" column="user_age"/>
</resultMap>
<select id="selectUser2" resultMap="userResultMap">
SELECT * FROM TB_USER1
</select>
<!-- 映射學生物件的resultMap -->
<resultMap id="studentResultMap" type="org.fkit.domain.Student">
<id property="id" column="id"/>
<result property="name" column="name"/>
<result property="sex" column="sex"/>
<result property="age" column="age"/>
<!-- 關聯映射 -->
<association property="clazz" column="clazz_id" javaType="org.fkit.domain.Clazz" select="selectClazzWithId"/>
</resultMap>
<!-- 根據班級id查詢班級 -->
<select id="selectClazzWithId" resultType="org.fkit.domain.Clazz">
SELECT * FROM tb_clazz WHERE id=#{id}
</select>
<!-- 查詢所有學生資訊 -->
<select id="selectStudent" resultMap="studentResultMap">
SELECT * FROM tb_student
</select>
<!-- 映射班級物件的resultMap -->
<resultMap id="clazzResultMap" type="org.fkit.domain.Clazz">
<!-- 班級的學生屬性,因為一個班級有多個學生,所以該屬性是一個集合 -->
</resultMap>
<!-- 根據班級id查詢學生 -->
<select id="selectStudentWithId" resultType="org.fkit.domain.Student">
</select>
<!-- 查詢所有班級資訊 -->
<select id="selectClazz" resultMap=" ">
</select>
</mapper>
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
你這上下就不是一個錯uj5u.com熱心網友回復:
那是因為我把resultType="map"換成resultType="org.fkit.mapper.UserMapper"運行出來的錯誤uj5u.com熱心網友回復:
都是一樣報錯的uj5u.com熱心網友回復:
不是應該這樣寫嗎?java.util.Mapuj5u.com熱心網友回復:
也可以寫map ,但是我試過java.util.Map也不行轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/56633.html
標籤:Java EE
