GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Dúvida com ManyToMany

java
hibernate
Tags: #<Tag:0x00007f2607648c30> #<Tag:0x00007f26076489d8>

#1

Olá, tenho um relacionamento ManyToMany, e gostaria de entender como faço para salvar na mesma tabela, o id de outra entidade

Entidade Envio ( com isso é gerada uma tabela chamada envio_carro, com id do carro e id do envio.)

@ManyToMany 
@JoinTable(name = "envio_carro", joinColumns = @JoinColumn(name = "envio_id"), inverseJoinColumns = @JoinColumn(name = "carro_id"))
private List<Carro> carros;

Entidade Carro

@ManyToMany(mappedBy = "carros")
private List<Envio> envios;

Entidade Local

@Entity
@DynamicUpdate(value=true)
@NamedQueries({
@NamedQuery(name = “Locall.findAll”, query = “SELECT distinct s FROM Locall s”),
@NamedQuery(name = “Locall.findByLocallId”, query = “SELECT s FROM Locall s WHERE s.id = :id”),
@NamedQuery(name = “Locall.findByLocallDescr”, query = “SELECT s FROM Locall s WHERE s.descricao = :descricao”)})
public class Locall implements Serializable, EntidadeBase {

private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "idLocal")
private Integer id;
@Column(name = "descricaoLocal")
private String descricao;
@OneToMany(mappedBy = "carro")
private List<Envio> envios;

O que precisava era salvar em envio_carro além do id do envio e id do carro, o id do local, me refiro aos relacionamentos num primeiro momento. Ou ainda se, o que fiz até aqui está correto, ou se deveria ter feito diferente.
Agradeço se puderem ajudar