Пример использования текущей даты в запросе JPA

может ли кто-нибудь указать мне пример того, как использовать CURRENT_DATE в запросе JPA?

CURRENT_DATE указан в JPA, но я не смог заставить его работать. Я всегда получаю unexpected token [CURRENT_DATE] исключения. Поскольку это указано в JPA, все провайдеры должны соблюдать это право?

Я использую EclipseLink 2.0 кстати.

3 ответов


его можно использовать так:

Query query = manager
    .createQuery("SELECT c FROM CITIES c WHERE c.founded = CURRENT_DATE");
for (Object city : query.getResultList()) {
  System.out.println(city);
}

...где создана является временным типом:

  @Column(name = "FOUNDED")
  @Temporal(TemporalType.DATE)
  private Date founded = new Date();

не отличный пример, но вы получаете идею. Я использую Eclipselink 1.1.2


ответом на этот вопрос было получение значений через JPA, а затем выполнить математику в простой Java.


Если вы используете Основы Выражения есть Expression currentDateDate() метод Expression (org.eclipse.persistence.expressions.Expression объект).