Hibernate 休眠条件查询选择更新顺序依据

Hibernate 休眠条件查询选择更新顺序依据,hibernate,criteria,hibernate-criteria,Hibernate,Criteria,Hibernate Criteria,我有以下使用Hibernate标准API的代码 List<?> results = getCurrentSession() .createCriteria(PersonEvent.class) .add(Restrictions.eq(STATUS, EventStatus.NEW)) .addOrder( Order.asc("sequence") ) .setLockMode(L

我有以下使用Hibernate标准API的代码

    List<?> results = getCurrentSession()
            .createCriteria(PersonEvent.class)
            .add(Restrictions.eq(STATUS, EventStatus.NEW))
            .addOrder( Order.asc("sequence") )
           .setLockMode(LockMode.PESSIMISTIC_WRITE)
            .setMaxResults(maxResults).list();
我有两个表ACT.EVENT(parent)和ACT.PERSON_EVENT(child),使用hibernate表对每个子类继承和一个关系进行建模。所以实体类PersonEvent扩展了抽象实体类事件

ACT.EVENT
-SEQUENCE (PK)
-STATUS
-CREATED_UTC
-UPDATED_UTC

ACT.PERSON_EVENT
-SEQUENCE (PK, FK)
-PERSONID
如何使用Criteria API按顺序编写相同的查询。

从查询中删除setMaxResults(maxResults),因为我认为在where条件下无法选择使用rownum进行更新。如果无法删除此项,则必须使用HQL或本机查询而不是条件
ORA-02014: cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc.
02014. 00000 -  "cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc."
ACT.EVENT
-SEQUENCE (PK)
-STATUS
-CREATED_UTC
-UPDATED_UTC

ACT.PERSON_EVENT
-SEQUENCE (PK, FK)
-PERSONID