Parameter ‘use_name’ not found. Available parameters are [arg1, arg0, param0,param1]
问题
在学习mybatis的时候,当查询需要传入多个参数的时候,需要加注解。我在传两个参数的时候类型均为String
List<Appointment> selLikeUse_nameAndMachine_usage(String use_name, String machine_usage);
然后就报了下面的错误
Parameter 'use_name' not found. Available parameters are [arg1, arg0, param0,param1]
而当两个参数类型不一样时就可以用
List<Appointment> selByNameAndStart_use_time(String use_name, Date pstart_use_time);
一脸懵逼
解决办法
在传参的方法中加入@para注解。我是在mapper接口的方法中加的,然后就可用了
List<Appointment> selLikeUse_nameAndMachine_usage(@Param("use_name") String use_name,@Param("machine_usage") String machine_usage);
对应的mapper.xml代码
<select id="selLikeUse_nameAndMachine_usage" resultType="Appointment">
select * from appointment where use_name like CONCAT(concat('%',#{use_name},'%')) and machine_usage like CONCAT(concat('%',#{machine_usage},'%'))
</select>