Под кеширане на заявки имах предвид CachedSqlEntityProcessor . Предпочитам обединените решение, както в другия ви въпрос MySQL GROUP_CONCAT дублиращи се записи . Но CachedSqlEntityProcessor също ще помогне, ако p_id се повтаря отново и отново в набора от резултати на основната заявка publication_authors , и имате по-малко притеснения относно използването на допълнителна памет.
Актуализация:Изглежда, че имате решени други два въпроса, вероятно можете да отидете и в двете посоки, публикувам краткия пример/указател, както поискахте, в случай, че други сметнат за удобно да имат
<entity name="x" query="select * from x">
<entity name="y" query="select * from y" processor="CachedSqlEntityProcessor" where="xid=x.id">
</entity>
<entity>
Този пример е взет от wiki . Това все още ще изпълнява всяка заявка "select * from y where xid=id" per id от основната заявка "select * from x". Но няма да изпраща една и съща заявка многократно.