问题描述:
Caused by: org.apache.ibatis.binding.BindingException: Parameter '' not found
问题原因:
(1)可能是 mybatis 的xml,对应的mapper接口缺少@Param注解,或者@Param注解的value与xml的不一致。
xml示例:
<select id="selectBy" parameterType="java.lang.String" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from tt_work
where work = #{workName,jdbcType = VARCHAR}
</select>
对应的mapper接口如下,可以看到 :
public interface QueryMapper {
//@Param(value = "workName")对应 xml的#{workName,jdbcType = VARCHAR}
int selectBy(@Param(value = "workName") String workName);
}
(2)也有可能是 mybatis的xml,存在多余的注释。注释中包含#{}、${}。
注释掉的代码mybatis还是会读到并去匹配mapper的,把多余的注释删掉就Ok了。
这个有点坑,要注意些。