转自:http://xutao5641745.iteye.com/blog/842074
在网上找了N久,才找出我出问题的根源:
我首先要感谢:http://www1.tianyablog.com/blogger/post_show.asp?BlogID=2060280&PostID=24118996
这位大哥,他提供的提示信息。接着再感谢http://qihaihui.iteye.com/blog/228685这位大哥,提供了最先的说明。。。。
代码:
Object[] params = { username, password };
String hql = "from pojo.Userinfo as u where u.username = ? and u.password = ?";
List list = this.getHibernateTemplate().find(hql, params);
错误提示:Remember that ordinal parameters are 1-based! 错误指向find语句。
经查,此错误的官方解释:1、当hql中不需要参数,而传递了参数导致,2、set参数时没有从0开始。
但此问题不属这两种。
检查导入的libraries无错误。
最后在网络搜索到:http://qihaihui.iteye.com/blog/228685,其中提示:
1. 如果PO类没有加Entity和Table的annotation,也会引发此错误,
2. 如果PO类没有放到spring配置的annotatedClasses里,也会提示此错误。
检查:applicationContext.xml中,没有将Userinfo.hbm.xml加入。
修正,通过。
pojo/Userinfo.hbm.xml
总结:错误提示,需要分辨是否其本质问题。