Les paramètres nommés sont meilleurs que les paramètres de position, nous devons faire attention à l'ordre/la position - alors que le nom est facile.
Nommée:
Query query = session.createQuery("select count(*) from User"+" where userName=:userName and passWord=:passWord");
query.setString("userName", userName);
query.setString("passWord", passWord);
positionnel:
Query query=em.createQuery("SELECT e FROM Employee e WHERE e.empId = ? and e.empDepartment = ?");
query.setParameter(1, employeId);
query.setParameter(2, empDepartment);
Pourquoi cela at-il été changé de toute façon? Juste passé une heure à comprendre pourquoi 'IllegalArgumentException dans la classe: org.ase.mip.persistence.entities.BaseEntityImpl, getter méthode de la propriété: id (BasicPropertyAccessor.java:186))' se passait. J'ai appelé 'setParameter' au lieu de' setParameterList'. DOH! – opncow