У нас есть приложение, в котором мы используем hibernate с mysql db.
У нас есть сценарий db import.sql, в который есть некоторые вставки в операторы, а также некоторые поля даты в db, такие как start_date end_date вчто мы являемся строковыми датами в формате по умолчанию, то есть ГГГГ-ММ-ДД.
Теперь проблема заключается в том, что во время получения / сравнения дат гибернат показывает странное поведение, например, предположим, что у нас есть дата 2012-01-30, то hibernate читает в правильном формате, то есть 30 января 2012 года, но если у нас есть дата, подобная 2012-02-06, то hibernate читает как 02 июня 2012 года. Мой DAO для сравнения и получения результатов выглядит следующим образом
public final List<Record> getPastRecords(final java.util.Date currentDate) {
List<Record> pastRecord = session.createCriteria(Record.class)
.add(Restrictions.lt("endTime", currentDate))
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
return pastRecord;
}
Есть идеи, что я делаю не так?