Różnica między leniwy: fałszywy i fetchMode 'chętny' są
- leniwy: false będzie pobrać powiązany obiekt domeny przez odpytywanie ponownie do bazy danych przy użyciu Wybierz Query, ale fetchMode "eager", który jest już nieaktualny (użyj polecenia fetch: "join") spróbuje połączyć się z powiązanymi tabelami (używając zewnętrznego sprzężenia) i pobrać powiązane obiekty w jednym zapytaniu.
- lazy: false będzie mieć jeszcze jedną kwerendę do bazy danych, aby pobrać powiązany obiekt domeny, a tym samym będzie mieć więcej interakcji z bazą danych, podczas gdy pobieranie: "dołącz" będzie mniej interakcji w celu pobrania tych samych danych.
- FetchMode Dołącz zastępuje właściwość leniwy. Zlekceważy to leniwego: fałsz.
Jeśli jesteś zainteresowany szczegółowym wyjaśnieniem Fetchmodes, spójrz na http://www.solidsyntax.be/2013/10/17/fetching-collections-hibernate/. W artykule opisano fetchmody trybu hibernacji oraz dane wyjściowe, które generują.
Mam nadzieję, że to pomoże.
myślę, że to może odpowiedzieć na pytanie: [http://stackoverflow.com/questions/654704/grails-gorm-default-fetch-strategy-when-to-set-fetchmode-to-eager- chętnie vS] [1] [1]: http://stackoverflow.com/questions/654704/grails-gorm-default-fetch-strategy-when-to-set-fetchmode-to-eager -eager-vs –
Dzięki za link, ale odpowiedź wydaje się opisywać różnicę między 'lazy: true' &' lazy: false'. Odpowiedź nie wspomina o 'fetchMode = [...]' – XDR
Byłoby miło, gdyby ktoś mógł odpowiedzieć na to pytanie, ponieważ nie znalazłem żadnego wyjaśnienia na temat dokumentacji grails ani w Internecie. – Merlin