Olá,
uma duvida como faço quando quero deletar da tabela associativa ???
Pois o insert deu certo ???
Alguém teria algum exemplo ou url que tenha isso ???
No exemplo abaixo tenho cliente para n endereços e foi criado a tabela CLIENTE_ENDERECO
abs
Mais uma informação eu queria apenas deletar da tabela associativa
fiz o teste abaixo e deletou da tabela associativa cliente-endereço e
também da tabela cliente ???
Eu queria um jeito de fazer a deleção somente da tabela associativa
e os registros da tabela cliente e endereço não fosse deletados ???
@Test
public final void testRemoveById() {
System.out.println("Inicio testRemoveById())");
ClienteImplDao dao = new ClienteImplDao();
try{
imsDBMng.BeginTransaction();
dao.removeById(1L);
imsDBMng.CommitTransaction();
System.out.println("Fim testRemoveById())");
} catch (Exception e) {
imsDBMng.RollBackTransaction();
System.out.println("Erro testRemoveById() ="+e);
e.printStackTrace();
}
}
@Entity
@Table(name="Endereco")
public class EnderecoImpl {
@Id
@GeneratedValue
@Column(name = "END_ID")
private Long id;
@ManyToMany(cascade = (CascadeType.PERSIST), mappedBy = "ends")
private List<CadastroImpl> clis;
---
@Entity
@Table(name="Cliente")
public class ClienteImpl {
@Id
@GeneratedValue
@Column(name = "CLI_ID")
private long id;
@ManyToMany(targetEntity = EnderecoImpl.class, cascade = (CascadeType.PERSIST))
@JoinTable(
name="CLIENTE_ENDERECO",
joinColumns = @JoinColumn(name="CLI_ID", referencedColumnName = "CLI_ID") ,
inverseJoinColumns = @JoinColumn(name = "END_ID", referencedColumnName = "END_ID")
)