Ho un modello ricco, dove ad es. un modello A
dipende da molte entità correlate / oggetti valore. Pertanto abbiamo metodi in A
per il recupero delle raccolte di oggetti correlati: getFoos()
, getBars()
e così via.
A un certo punto, una o più di queste raccolte correlate non dovrebbero essere recuperate con entusiasmo e, inoltre, dovrebbero essere recuperate usando la paginazione.
Non voglio "inquinare" il modello con metodi come getFoosPage(from, to, size)
. Questo non fa parte del business, è parte del problema di visualizzazione.
Come devo risolvere l'impaginazione?
Successivamente, a volte ho bisogno di ottenere solo A
con Foos
, ma non Bars
. Dovrei avere un metodo nel mio repository dicendo: getAWithFoos()
? Non mi piace che vengano restituiti A
sarà popolato solo parzialmente (no boos
), e non puoi dirlo solo ispezionando il modello.
Per ora, sto pensando di costruire un modello di 'query', dove avrei diverse classi per gli scenari che mi servono, come 'AWithFoos' che contiene A e Foos correlati e così via. Ha senso?