Hibernate等效于TIMESTAMP查询

时间:2012-10-30 19:45:14

标签: hibernate

出于好奇,使用hibernate实现此目的的最佳方法是什么

   select * 
   from USERS 
   where TO_CHAR(CREATE_TIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF') = '1972-   07-31 13:52:50.381000'

2 个答案:

答案 0 :(得分:2)

Date date = dateFormat.parse("1972-07-31 13:52:50.381");
String hql = "select u from User u where u.createTimestamp = :timestamp";
return session.createQuery(hql).setTimestamp("timestamp", date).list();

答案 1 :(得分:1)

我使用的是api标准: 发布后,我按照以下方式开始工作:

Criteria criteria = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(User.class);
criteria.add(Restrictions.sqlRestriction("TO_CHAR(CREATE_TIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF')='1972-07-31 13:52:50.381000'"));