错误信息: Position beyond number of declared ordinal parameters. Remember that ordinal parameters are 1-based! Position: 2 错误原因: 参数是从0开始的。 错误的语句: 在query.setParameter(1, id_); 以为是从1开始的。但是是从0开始的 成功的语句: String hql =" from UseUserAccess where userId = ?"; Session session = sessionFactory.openSession(); Query query=session.createQuery(hql); query.setParameter(0, id_); List<UseUserAccess> querList = query.list(); return querList==null?null:querList.get(0);