在测试类中报如下错误:
Caused by: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 44; columnNumber: 10; 元素类型为 "mapper" 的内容必须匹配 "(cache-ref|cache|resultMap*|parameterMap*|sql*|insert*|update*|delete*|select*)+"。
解决的途径:
作为初学者,我也不知道什么原因导致的,在mapper配置中,删除掉resultMap标签和Select标签之间的空行,错误就没有了,否则在测试类中会报错:
mapper配置如下 :
<?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">
<mapper namespace="com.qf.java2105.dao.UserDao">
<select id="selectAll" resultType="com.qf.java2105.pojo.User" >
select id,t_name ,t_phone ,t_age ,t_address ,t_hobit ,t_education , from t_user
</select>
<resultMap id="UserWithJob" type="com.qf.java2105.pojo.User">
<id property="id" column="id"></id>
<result property="name" column="t_name"></result>
<result property="phone" column="t_phone"></result>
<result property="age" column="t_age"></result>
<result property="address" column="t_address"></result>
<result property="hobit" column="t_hobit"></result>
<result property="education" column="t_education"></result>
<association property="job" javaType="com.qf.java2105.pojo.Job">
<id property="id" column="id"/>
<result property="jobId" column="job_id"/>
<result property="jobUsername" column="job_username"/>
<result property="jobSalary" column="job_salary"/>
</association>
</resultMap>
<select id="selectById" resultMap="UserWithJob" >
SELECT
ur.id,
t_name ,
t_phone ,
t_age ,
t_address ,
t_hobit ,
t_education ,
jb.id
jb.job_id ,
job_username ,
job_salary
FROM
t_user ur,
t_job jb
WHERE ur.job_id = jb.job_id
AND ur.id =#{id}
</select>
</mapper>
欢迎各位大佬解答,么么哒~