zbb20171215 MyBatis报错: Parameter '*' not found. Available parameters are [1, 0, param1, para

Posted Daryll

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zbb20171215 MyBatis报错: Parameter '*' not found. Available parameters are [1, 0, param1, para相关的知识,希望对你有一定的参考价值。

mapper代理接口中的方法:

  public User login(String loginid,String loginpwd) throws Exception;

mapper.xml中的代码:

  <select id="login" parameterType="String" resultType="User">
    SELECT * FROM `user` WHERE LoginID=‘#{loginid}‘ and LoginPwd=‘#{loginpwd}‘ AND Role=2
  </select>

 

调用login()时出现Parameter ‘loginid‘ not found. Available parameters are [1, 0, param1, param2]的错误。

 

解决方案:

 当只传一个参数到sql语句时,可以直接写参数名,当传多个参数时,应当这样写(多个参数已#{0}开始):

1
public User login(String loginid,String loginpwd) throws Exception;

 

1
2
3
<select id="loginByTeacher" parameterType="String" resultType="User">
    SELECT * FROM `user` WHERE LoginID=#{0} and LoginPwd=#{1} AND Role=2
 </select>

  

 

参考:http://www.2cto.com/database/201409/338155.html



以上是关于zbb20171215 MyBatis报错: Parameter '*' not found. Available parameters are [1, 0, param1, para的主要内容,如果未能解决你的问题,请参考以下文章

zbb20180827 Mybatis中#{}和${}有什么区别?

zbb20181012 spring,aop,execution切入点表达式

mybatis-Error building SqlSession

springboot整合mybatis记录

zbb20170218_hibernate

zbb20180827 java获取html内容