org.hibernate.QueryException: Expected positional parameter count: 2, actual parameters: [] [from Us

错误:org.hibernate.QueryException: Expected positional parameter count: 2, actual parameters: [] [from User where username = ? and password = ?]


我出错的代码是:

                              Query q = session.createQuery( "from User where username = ? and password = ?");


原因:

                            在hql语句中有2个占位符“?”,则在query.setParameter()处,一定要有一个相对用的位被传入,否则会出现上述异常。


解决:

                               Query q = session.createQuery( "from User where username = ? and password = ?");
                                q.setString(0,username);
                                q.setString(1, password);


                               Query类的索引从0开始的,0代表第一个问号,1代表第二个问号。

                             


你可能感兴趣的:(Hibernate,SSH)