Ho un'entità Hotel
che può avere molti address
e molti image
oggetti, ad esempio, sono uno2many correlati con l'hotel.
La domanda sorge durante il recupero e il salvataggio della risorsa collegata.
Recupero
- Carico la risorsa che è Hotel qui che ha la matrice
ids
dell'indirizzo e immagine, questi indirizzi contengono gli identificativi univoci per ciascuna risorsa correlata, dopo che l'hotel è stato recuperato la richiesta successiva viene fatta per recuperare indirizzo e immagini una dopo l'altra o in parallelo (il parallelo potrebbe essere migliore perché non sono correlate). Lo svantaggio è che ci sono tre richieste di rete (una per l'hotel e poi gli indirizzi e le immagini) e ha lo svantaggio di mostrare le informazioni parziali come tutti gli indirizzi non completamente recuperati nel caso in cui il server sia inattivo. - Quando viene richiesta la risorsa hotel, l'applicazione sul server fa tutto il lavoro e, con l'aiuto del database, tutte le informazioni vengono inviate in un'unica soluzione, probabilmente impiegando più tempo. Ora, in questo caso la risorsa ha una matrice di indirizzi reali e oggetti immagine.
Salvataggio
- In caso di nuova risorsa tutte le informazioni vengono passate al server in una sola volta, vale a dire la risorsa con l'array di indirizzi e collegamenti di miniature. In questo caso, le risorse collegate vengono salvate per prime, cioè l'indirizzo viene salvato per primo, quindi il suo id è collegato alla risorsa e quindi la risorsa viene salvata. Se l'indirizzo non riesce a salvare, eseguiamo il rollback dell'intera azione e lo consideriamo fallito e chiediamo al cliente di riprovare.
- Per l'aggiornamento devo riflettere ancora, magari progettare l'interfaccia utente in modo tale che sia possibile aggiornare una sola risorsa collegata alla volta.
Mi piacerebbe sapere se esiste un approccio migliore o quale sia il mio approccio migliore e perché?