今天使用Hibernate出个奇怪的错误,第一次碰到
Remember that ordinal parameters are 1-based!
原因是
问题发生的原因是:hql语句里不需要参数,却添加了一个参数,删掉添加参数的语句就可以了!
我的HQL语句:
List iocPayList = iocPayDao.findByHQL("from IocPay i where i.is_bank = '1' and i.order_date like '%?%'", new Object[]{str_date});
将HQL语句中''中的?没有解析成占位符,确解析成字符串了。
改成如下形式
List iocPayList = iocPayDao.findByHQL("from IocPay i where i.is_bank = '1' and i.order_date like ?", new Object[]{str_date});
问题解决!!!!