1. 程式人生 > >zbb20171215 MyBatis報錯: Parameter '*' not found. Available parameters are [1, 0, param1, param2]

zbb20171215 MyBatis報錯: Parameter '*' not found. Available parameters are [1, 0, param1, param2]

class adding data alt num sql throws clas str

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, param2]