Oi pessoal!
Tenho uma tabela usarios e outra privilegios que possui o relacionamento de muito para muitos.
Mapeando -> no usuarios vou ter uma [color=darkblue]lista de privilegios[/color] e
no privilegios uma [color=darkblue]lista de usuarios[/color].
Certo?
Segundo o fluxo do meu sistema, qdo vou inserir um Usuario os privilegios ja estão cadastrados.
Só que para inserir no usuarios e fazer o relacionamento entre as tabelas usuarios -> privilegios eu vou ter que preencher uma Lista com Objetos Pivilegios
[color=brown]É aqui que esta a minha duvida!!! [/color]Eu tenho que passar o objeto inteiro???
Não tem como eu passar apenas o ID do privilegio???
Porque nessa hora eu tenho apenas o ID e estaria gastando transação atoa fazendo uma busca para cada ID, só para receber o objeto inteiro.
Se sim como ficaria??? O que eu teria que mudar???
Os meus relacionamentos estão assim:
public class Usuarios implements Serializable {
// Chave
@Id
@SequenceGenerator(name="usuario_seq", allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="usuario_seq")
@Column(name = "usuario_id", nullable = false)
private int usuarioId;
...
// Relacionamento
@JoinTable(name = "privilegios_usuarios",
joinColumns = {@JoinColumn(name = "usuario_id", referencedColumnName = "usuario_id")},
inverseJoinColumns = {@JoinColumn(name = "privilegio_id", referencedColumnName = "privilegio_id")})
@ManyToMany
private List<Privilegios> privilegioList;
....
e assim:
public class Privilegios implements Serializable {
// Chave
@Id
@SequenceGenerator(name="privilegio_seq", allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="privilegio_seq")
@Column(name = "privilegio_id", nullable = false)
private int privilegioId
...
// Relacionamento
@ManyToMany(mappedBy = "privilegioList" )
private List<Usuarios> usuarioList;
...
Obrigada!!!