Mybatis 报错`Parameter '0' not found. Available parameters are [arg1, arg0, param1, param2]`

1.异常信息:

Parameter ‘0’ not found. Available parameters are [arg1, arg0, param1, param2]

这是因为mybatis的Mapper接口方法传入了多个参数,如

List<User> findByNameAndPsd(String username, String password);

配置文件:

<select id="findByNameAndPsd" parameterType="User" resultType="User">
        SELECT * FROM user WHERE username = #{username} AND password = #{password}
    </select>

2.解决办法

a. 使用#{arg0}

使用#{arg0}和#{arg1}来告诉mybatis,当前变量使用哪个参数的值

<select id="findByNameAndPsd" parameterType="User" resultType="User">
        SELECT * FROM user WHERE username = #{arg0} AND password = #{arg1}
    </select>
b.使用注解@Param
List<User> findByNameAndPsd(@Param("username") String username,@Param("password")String password);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值