



Параметры запроса JPA
Параметры запроса JPA бывают двух видов
Обозначение позиционных параметров:
Как следует из названия, параметры запроса JPA показаны числами, примером этого типа записи будет
SELECT e
FROM Employee e
WHERE e.salary > ?1
ВЫБЕРИТЕ e ОТ Сотрудника e ГДЕ электронная зарплата>? 1 Здесь? 1 - позиционный параметр, а 1 - его позиция. Если вы хотите выполнить этот запрос, вы должны установить значение параметра, используя позицию параметра.
query.setParameter(1, salary).getResultList();
query.setParameter (1, зарплата) .getResultList (); Этот оператор устанавливает значение параметров запроса JPA, указанных в JPQL, и выполняет запрос.
Обозначение именованных параметров
Параметры запроса JPA с обозначением именованных параметров следующие.
SELECT e
FROM Employee e
WHERE e.name = :name
ВЫБЕРИТЕ e ОТ Сотрудника e ГДЕ e.name =: имя Здесь: name - именованный параметр. Он будет содержать значение имени, переданное во время выполнения. Параметры таким запросам передаются следующим образом
query.setParameter("name",employeeName);
query.setParameter ("имя", employeeName); Здесь name - это имя параметра, указанное в запросе, а employeeName - это переменная типа String.
может дубликат? stackoverflow.com/questions/1710476/…