Как получить состояние для данной ревизии для списка идентификаторов в Envers

У меня есть проект, который использует Hibernate Envers для хранения информации об аудите. Теперь у меня есть список идентификаторов и номер версии, и я хотел бы получить информацию для сущностей в этом списке идентификаторов для данной версии.

Возможно ли это сделать?

Мое исследование привело меня к AuditReader.getQuery(), для которого я могу создать запрос для EntitiesAtRevision и так далее, но я не могу отправить идентификатор для выбора нужных мне объектов.

Проблема в том, что если я не смогу этого сделать, мне придется делать по одному запросу на каждую сущность, что приведет к тысячам запросов (у меня есть список из 1000 идентификаторов), или получить каждую сущность и запрос на стороне Java, что тоже может быть не так хорошо (у меня много сущностей). Из-за этого я могу решить написать свой собственный запрос, чего я хотел бы избежать.


person JSBach    schedule 10.07.2015    source источник


Ответы (1)


Я думаю, вы должны иметь возможность использовать AuditEntity.id().in(collectionOfIds) в качестве ограничения для запроса.

person adamw    schedule 11.07.2015