今天学到的东西:
mybatis报错了
Parameter ‘0’ not found. Available parameters are [arg1, arg0, param1, param2]
之前是这样写的:
1
2
3update tbXX
set AA = #{0}
where II = #{1}之后就报了上面的错误,后来改成了:
1
2
3update tbXX
set AA = #{arg0}
where BB = #{arg1}看到网上的原因是新版本不能使用#{0},要使用 #{arg0}。
Mapper.xml文件里的注释问题
因为我会在写出有bug的语句时候把他们注释起来,下次看到了以后可以知道之前错在哪里了。这次的问题就处在这里,用了注释的快捷键,是这样注释的:
1
2
3
4
5<update id="someId">
-- update tbXX
-- set AA = #{0}
-- where II = #{1}
</update> 结果还是运行了,出错了。这里自动用了sql的注释语句,可能是在mapper.xml里写的原因,所以不可以这样用,所以就搬到标签外面注释了,用了xml的注释语句:
1
2
3<!--update tbXX-->
<!--set AA = #{0}-->
<!--where II = #{1}-->