Последние 3 часа я почесал голову, чтобы найти самый последний объект с помощью hibernate.Я пытался, но всегда возвращал либо ноль, либо castTypeExcetpion.
public Content getMostRecentByCategoryAndGenre(Category category, Genre genre){
logger.info("calling getMostRecentByCategoryAndGenre");
logger.debug(category);
logger.debug(genre);
DetachedCriteria recentDate = DetachedCriteria.forClass(this.getPersistentClass());
recentDate.setProjection(Projections.max("lastModified"));
Content recent = (Content) this.getSessionFactory().getCurrentSession().createCriteria(this.getPersistentClass())
.add(Restrictions.eq("genre", genre))
.add(Restrictions.eq("category", category))
.setProjection(Projections.max("lastModified")) // gives cannot cast timestamp to com.bla.bla.bla.myproject
// .add(Property.forName("lastModified").eq(recentDate)) // this if uncommented and previous line commented gives null result
.uniqueResult();
logger.debug(recent);
return recent;
}
Есть что-то, что я не делаю правильно? спасибо, что прочитали это.