persistências:

Spring Persistence Tutorial | Baeldung

Ebook: https://s3.amazonaws.com/baeldung.com/Persistence+with+Spring.pdf

link: https://www.baeldung.com/jpa-cascade-types

link: https://cursos.alura.com.br/forum/topico-quando-usar-cascadetype-e-qual-a-diferenca-entre-all-persist-merge-remove-refresh-detach-110962

Cascade types

FetchTypes

link: https://stackoverflow.com/questions/2990799/difference-between-fetchtype-lazy-and-eager-in-java-persistence-api

EAGERo carregamento de coleções significa que elas são buscadas completamente no momento em que seu pai é buscado. Portanto, se você tiver Coursee tiver List<Student>, todos os alunos serão buscados no banco de dados no momento em que Courseforem buscados.

LAZYpor outro lado, significa que o conteúdo do Listarquivo é obtido somente quando você tenta acessá-lo. Por exemplo, chamando course.getStudents().iterator(). Chamar qualquer método de acesso no Listiniciará uma chamada ao banco de dados para recuperar os elementos. Isso é implementado criando um Proxy em torno do List(ou Set). Portanto, para suas coleções preguiçosas, os tipos concretos não são ArrayListHashSet, mas PersistentSetPersistentList(ou PersistentBag)