Dao em relacionamento n pra n

3 respostas
carvalhomarcio

é o seguinte eu tenho uma classe livro e uma classe autor, o relacionamento entre elas é n parar n pois um livro pode ter vários autores e um autor pode ter vários livros.

No banco de dados é criada uma terceira tabela a autor_livro que contém o id de cada tabela, mais eu como vou fazer o dao das classes???

no banco tá assim:

tabela livro:
idlivro;

tabela autor:
idautor;

tabela livro_autor:

idlivro;

idautor;

vou fazer a classe livro:

public class Livro{
  private idLivro;
  private List<Autor>autor = new ArrayList<Autor>();

  geters e seters......
}

aqui a minha classe autor:

public class Autor{
  private idAutor;
  private List<Livro>livro = new ArrayList<Livro>();

  geters e seters.....
}

como ficariam no LivroDao o método inserir??? por favor é urgente!

3 Respostas

drsmachado

Bom, isso me parece uma dúvida quanto aos comandos SQL e não sobre a DAO
Afinal, para inserir, você passará os parâmetros do livro e do autor, entre eles, o id de cada um. Assim sendo, o INSERT deverá se preocupar em preencher a tabela livro_autor (ou uma eventual stored procedure).
No caso do select, update ou delete, a solução é a mesma, sempre depende do SQL.

benignoms

Cria os beans Autor, Livro e AutorLivro, este último com dois atributos privados um do tipo Autor e outro Livro. Os seguintes DAOs: AutorDAO, LivroDAO e AutorLivroDAO.

xXxRafaelxXx

Esse relação N para N é obrigatório?
pois senão, vc pode considerar N para 1,
Um livro, sim ele pode ter mais de um autor, mas se não for obrigatorio a utilização de N para N, a utilização do outro pode facilitar sua vida.

Bom so posso opinar sobre isso.

mensagem editada, pois viagei legal na anterior. XDDDD

Criado 26 de novembro de 2010
Ultima resposta 26 de nov. de 2010
Respostas 3
Participantes 4