Get previous version of entity in Hibernate Envers

后端 未结 5 1834
孤街浪徒
孤街浪徒 2021-01-31 22:36

I have an entity loaded by Hibernate (via EntityManager):

User u = em.load(User.class, id)

This class is audited by Hibernate Enve

5条回答
  •  无人共我
    2021-01-31 23:22

    I think it would be this:

    final AuditReader reader = AuditReaderFactory.get( entityManagerOrSession );
    
    // This could probably be declared as Long instead of Object
    final Object pk = userCurrent.getId();
    
    final List userRevisions = reader.getRevisions( User.class, pk );
    
    final int revisionCount = userRevision.size();
    
    final Number previousRevision = userRevisions.get( revisionCount - 2 );
    
    final User userPrevious = reader.find( User.class, pk, previousRevision );
    

提交回复
热议问题