ManyToMany

Será feito na tabela author e book, pois, um livro pode ter mais de um autor e um autor pode ter mais de um livro.

Um livro terá uma coleção de autores. Autores terá uma coleção de livros.

Na classe BookModel Veja aqui

  • Importaremos um Set de AuthorModel.

  • Passaremos anotação @ManyToMany

Dessa vez, não será JoinColumn, pois teremos uma coleção de ambos os lados.

Usaremos @JoinTable, (tabela auxiliar), que vai unir os ID's das suas entidades. Dentro do JoinTable, daremos alguns comandos:

  • name = "nome da tabela auxiliar"

  • joinColumns = @JoinColumn(name = "book_id") > chave primária

  • inverseJoinColumns = @JoinColumn(name = "author_id") > chave estrangeira

Na classe AuthorModel Veja aqui

  • Importaremos um Set de BookModel

  • Passaremos anotação @ManyToMany

E aplicaremos o relacionamento. Dentro de @ManyToManny, passaremos o mappedBy novamente. E aí, é o que já sabemos. Como o Author foi importado na classe? Como "authors" (dono desse relacionamento). Portanto, o mappedBy terá justamente esse nome associado a ele.

Atualizado