hibernate异常之QueryException

org.hibernate.QueryException: Expected positional parameter count: 1, actual。。。。

显示这样的异常

错误部分代码:

String hql="from Customer where username=?";
        Query query =session.createQuery(hql);

改正之后:

String hql="from Customer where username=?";
        Query query =session.createQuery(hql);
        query.setString(0, username);

与错误部分比较多了一句:query.setString(0,username);

个人理解:

  hql语句中where username=?,程序是不知道?是什么的,需要传入一个参数,而setString方法就是告诉hql语句?指的是username,当然程序先要传入这个参数

如果hql语句中有多个参数,则需要继续写setString方法,添加参数。

  “where username=? and password=? and password=?”

  query.setString(0,username);

  query.setString(1,password);

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。