Fala, Diego! Beleza?
Cara, essa parte de relacionamentos realmente é meio confusa, mas vou tentar simplificar:
No nosso caso o relacionamento é bidirecional, já que nós mapeamos o relacionamento tanto na classe Telefone
quanto na classe Aluno
. Consguimos acessar o Aluno
através de uma instância de Telefone
e conseguimos acessar os Telefone
s através de uma instância de Aluno
.
Quando existe o relacionamento bidirecional, temos as propriedades mappedBy
e inversedBy
sendo definidas, como foi no nosso caso.
Basicamente é isso. A documentação sobre as diferenças entre os tipos de relacionamento é bem escassa: https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/association-mapping.html#one-to-many-bidirectional
Espero ter ajudado. Abração, man!