JPA2.0的行为非常奇怪
我尝试构建一个如下所示的查询,其中employeId和empDepartment是通过java参数传递的长值
Query query=em.createQuery("SELECT e FROM Employee e WHERE e.empId = :empId and e.empDepartment = :empDepartment");
query.setParameter("empId" ,employeId);
query.setParameter("empDepartment",empDepartment);
但是上面的查询第一次不起作用,它产生了上面的错误,但是当我第二次再次触发相同的方法时,每件事都很顺利,每次都会发生这种情况,原因是什么?
2条答案
按热度按时间pw9qyyiw1#
您可以尝试以下操作:
如果这也不起作用,那么查询内容也可能有问题,而不是参数的替换。可能是类型不正确。参数类型是由上下文推断的。
rnmwe5a22#
我不知道是什么原因,但我曾经遇到过这种情况。试着这样做。只要删除=:empId和其他参数之间白色空格。