Hibernate 休眠按顺序设置日期格式
在我的数据库中,我定义了一个名为“创建日期”的时间戳字段。Hibernate 休眠按顺序设置日期格式,hibernate,Hibernate,在我的数据库中,我定义了一个名为“创建日期”的时间戳字段。 我想做的是有这样一个查询: SELECT * FROM table_name ORDER BY date(creation_date) desc 我的代码按原样定义(仅限相关部分): 但这会导致一个Hibernate异常 谢谢你的帮助 编辑: 创建日期保留“2015-08-17 15:01:37”,但我想按日期(创建日期)排序,只保留“2015-08-17”Hibernate criteria API不知道底层数据库的所有SQL函数。
我想做的是有这样一个查询:
SELECT * FROM table_name ORDER BY date(creation_date) desc
我的代码按原样定义(仅限相关部分):
但这会导致一个Hibernate异常
谢谢你的帮助
编辑:
创建日期保留“2015-08-17 15:01:37”,但我想按日期(创建日期)排序,只保留“2015-08-17”Hibernate criteria API不知道底层数据库的所有SQL函数。 您必须编写自定义排序类来扩展hibernate org.hibernate.criteria.Order.class。例如,检查 (或者)您可以在您的案例中使用HQL,而不是像这样的CriteriaAPI
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession();
Query query = session.createQuery("from TableClass order by date(creationDate) desc ");
return query.list();
谢谢,我已经延长了订单课程,这真是太棒了!
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession();
Query query = session.createQuery("from TableClass order by date(creationDate) desc ");
return query.list();