您的位置:首页 > 其它

学习ssm框架——Mybatis版本问题解决方案(一)

2017-10-21 12:55 351 查看
前几天搭建了ssm框架准备开发后端,今天写mapper时遇到个棘手的问题-写select语句时发现入参报错总是提示找不到username,而且错误信息里面有四个参数,而我的入参只有两个,贴出源代码和错误信息。

<select id="selectUserByNameAndPassword" parameterType="String" resultType="po.User">
select * from user where username = #{username} and password = #{password}
</select>


Mybatis参数问题



然后经过一番折腾在网上找到解决方案,将变量改成参数形式0,1或者加上jdbcType,代码如下

<select id="selectUserByNameAndPassword" parameterType="String" resultType="po.User">
select * from user where username = #{0} and password = #{1}
</select>


And

<select id="selectUserByNameAndPassword" parameterType="String" resultType="po.User">
select * from user where username = #{username, jdbcType=VARCHAR} and password = #{password, jdbcType=VARCHAR}
</select>


报错同上。

此时就很难受了,看源码debug。。。

偶然间查到了可能是版本问题,然后尝试了以下解决方案搞定

<select id="selectUserByNameAndPassword" parameterType="String" resultType="po.User">
select * from user where username = #{arg0} and password = #{arg1}
</select>


最后贴上码云项目地址
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: