spring - View change history entity for any date with hibernate -


there problem - have watch state of table entities date.

please tell me how implement task via envers, or solution better , easier envers

i use in project spring-boot, spring-data , hibernate. tried use hibernate-envers. code looks this, not solved problem:

list list = auditreader.createquery()             .forrevisionsofentity(entity.class, false, true)             .addorder(auditentity.revisionnumber().desc())             .addprojection(auditentity.property("id").distinct())             .add(auditentity.revisionnumber().le(auditreader.getrevisionnumberfordate(new date())))             .getresultlist(); 

i found solution in question.

list = auditreader.createquery()                 .forrevisionsofentity(entity.class, true, true)                 .add(auditentity.revisionnumber().le(auditreader.getrevisionnumberfordate(date)))                 .add(auditentity.revisionnumber().maximize().computeaggregationininstancecontext())                 .add(auditentity.revisiontype().ne(revisiontype.del))                 .getresultlist(); 

this query returns ready list of entities. function 'computeaggregationininstancecontext()' works according documentation , group statement:

compute aggregated expression in context of each entity instance separately.

dont forget catch 'revisiondoesnotexistexception', in case return empty list


Comments