Mybatis有多个参数时的写法
1.第一种写法
Mapper接口函数
public boolean uploadUserUpwd(String upwd,String uname);
Mapper.xml
<update id="uploadUserUpwd" parameterType="String" >
update login
set upwd=#{arg0}
where uname=#{arg1}
</update>
2.第二种写法
public boolean uploadUserUpwd(@Param("upwd") String upwd,@Param("uname") String uname);
此时xml中用参数名字即可
当xml中不使用arg0,而使用单个的参数名称,报错:Parameter ‘xxx‘ not found. Available parameters are [arg1, arg0, param1, param2]
问题分析:没有@Param注解指定参数名时,底层使用的是一个HashMap集合,把每个参数以key为arg0…argN,value为实际参数和key为param1…paramN,value为实际参数的形式,依次存入到HashMap集合中,例如: {arg0=1000,param1=1000,arg1=lisi,param2=lisi…}
原文链接:https://www.dianjilingqu.com/441425.html