Duvida na relacionamento entre entidades

6 respostas
alexborges

queria esclarecer essa minha duvida entre relacionamento entre entidades

exemplo:

tenho uma entidade “Usuario” e esse se relaciona com “Cliente”, “Venda”, “Nota”, “Recebimento”
todos relacionamentos com “Usuario” seriam Um para muitos(OneToMany) estou certo, tendo essa situação eu teria
que ter referencia de todas as classes na classe “Usuario”

exemplo:

public class Usuario

{

@Id

private int id;
private String nome;

  @OneToMany      
  private Cliente cliente;

  @OneToMany      
  private Venda venda;

  @OneToMany      
  private Nota nota;

  @OneToMany      
  private Recebimento recebimento;

 continua....

}

seria esse o caso fiquei na duvida,
por que só queria ter esse referencia nas outras classes para saber que usuario foi responsavel por cadastrar aquele item ou movimentação;

se poderem me ajudar ou postar algum exemplo de como tem que ser eu ia agradecer obrigado a todos fiquem com DEUS;

6 Respostas

guilhermetonetto

1º qdo for postar um codigo poste com tags [code]

2º sim se vc for usar as classes dentro da classe usuario vc tem que definir elas dentro da sua classe

não sei se é bem isso que vc queria saber mais qualquer coisa posta ae

[]'s

alexborges

acho que vc não entendeu muito bem a pergunta
imagine um diagrama MER onde o Usuario tem nenhum ou muitos Clientes, Vendas, Notas e Recebimentos, relacionamento feito para saber quem fez a operação…ok
quero saber como fica esses relacionamentos na persistencia
se poder ajudar eu agradeço

V

se você tem o banco pronto use o seam-gen para gerar as entities ele faz o mapeamento legal, ou então use o Netbeans que também pode criar as classes de entidades.

espero ter ajudado, flw.

alexborges
estou começando em jpa agora então prefiro de começo fazer tudo na mão para fixar bem ok
mas muito obrigado pela dica
mas ainda fica a duvida ai.....
A

Primeiramente não entendi muito bem o seu relacionamento.
Se você tem OneToMany voce deveria ter um List, não?

Ex:

@OneToMany
private List<Cliente> cliente;

Se eu entendi a sua pergunta, você quer que a classe por exemplo de Cliente tenha relacionamento com a sua classe de Usuario.

Se for este o caso, você poderia ter algo como:

public class Cliente{

   @ManyToOne(targetEntity = Usuario.class)
   @JoinColumn(name = "curso_id")
   private Usuario usuario;

...
}

Espero ter ajudado

alexborges

AndreiTognolo:
Primeiramente não entendi muito bem o seu relacionamento.
Se você tem OneToMany voce deveria ter um List, não?

Ex:

@OneToMany
private List<Cliente> cliente;

Se eu entendi a sua pergunta, você quer que a classe por exemplo de Cliente tenha relacionamento com a sua classe de Usuario.

Se for este o caso, você poderia ter algo como:

public class Cliente{

   @ManyToOne(targetEntity = Usuario.class)
   @JoinColumn(name = "curso_id")
   private Usuario usuario;

...
}

Espero ter ajudado

AndreiTognolo essa que é minha duvida estou acustumado com modelagem de banco MER(Modelo de Entidade e Relacionamento) onde nesse caso seria um relacionamento 1 x N mas não sei como vai ficar na classe para fazer a persistencia essa ultima situação que vc postou de

public class Cliente{   
  
   @ManyToOne(targetEntity = Usuario.class)   
   @JoinColumn(name = "curso_id")   
   private Usuario usuario;   
  
...   
}

tudo bem concordo vejo a situação desse modo tb, mas ja na primeira não vejo por que

@OneToMany   
private List<Cliente> cliente;

vejo isso ai como eu tivesse uma tela de cadastro onde teria os campos do usuario logo abaixo uma JTabel para
cadastrar os Clientes, que não é meu caso.
mas só para simplificar a pergunta como seria as estrutura da classe para esse banco de dados aqui:
tenho uma tabela Usuario, e outras duas Cliente e Venda que possui uma chave estrangeira da tabela Usuario:
se vcs poderem me postar esse exemplo eu ficaria muito grato e a minha duvida esclarecida

Criado 17 de janeiro de 2008
Ultima resposta 17 de jan. de 2008
Respostas 6
Participantes 4