Mybatis报错'Parameter 'medicalExamNo' not found.Available parameters are [arg1, arg0, param1, param2]'
在Mapper接口的方法中,参入的参数为多个
1.ExamBaseInfoMapper.java 中方法
/**
* 通过检查编号和姓名查询id
* @author Xiaolizi
* @createTime 2019-06-06 15:32:12
* @param medicalExamNo
* @param name
* @return String
*/
String findIdByMedicalExamNoAndPartnerName(String medicalExamNo,String name);
2.ExamBaseInfoMapper.xml中sql语句
<select id="findIdByMedicalExamNoAndPartnerName" resultType="String" parameterType="String">
select ID from PME_EXAM_BASE_INFO where MEDICAL_EXAM_NO = #{medicalExamNo} and NAME = #{name}
</select>
3.当传入的参数只有一个的时候,这样写并不会报错,但是当传入多个参数后,Mybatis会报错无法找到参数
4.解决方法:在mapper接口类的方法中加上@param注解
/**
* 通过检查编号和姓名查询id
* @author lizi
* @createTime 2019-06-06 15:32:12
* @param medicalExamNo
* @param name
* @return String
*/
String findIdByMedicalExamNoAndPartnerName(@Param("medicalExamNo") String medicalExamNo, @Param("name")String name);
}