Select em entidade @ManyToMany JPA

2 respostas
fallante

Galera, novamente estou aqui, desta vez para pedir um auxilio. Tenho duas entidades e um relacionamento n - n ja criado.

Problema:
No banco esta tudo certo.
Estou querendo fazer esta busca

SQL: " select * from CHURRASCALC.Produto p INNER JOIN CHURRASCALC.Churrascoproduto c ON p.id = c.id_churrasco WHERE c.id_churrasco = 2"

quero passa-la como

createQuery(busca), mas soh consigo passa-la como nativo, ou seja, createNativeQuery(busca);

Entidades

Churrasco

@ManyToMany
    @JoinTable(
        name = "ChurrascoProduto",
        joinColumns = {@JoinColumn(name = "id_churrasco")},
        inverseJoinColumns = {@JoinColumn(name = "id_produto")}
    )
    private List<Produto> produtos;

Produto

@ManyToMany
    @JoinTable(
        name = "ChurrascoProduto",
        joinColumns = {@JoinColumn(name = "id_produto")},
        inverseJoinColumns = {@JoinColumn(name = "id_churrasco")}
    )
    private List<Churrasco> churrascos;

Possivel Erro:

Creio que o erro esta no nome do relacionamento, pois o erro diz que nao existe a entidade ChurrascoProduto.

Devo criar uma entidade?
Ou consigo fazer a busca soh com o relacionamento?

Espero Respostas
Vlw

2 Respostas

T

Nao estou nem respondendo seu post :slight_smile: , mas acho q nossas duvidas sao semelhantes…
Entao quem puder ajudar, esta ajudando a dois hehe.

No meu caso eu Tenho isso.

public Alteracao{

@JoinTable(name = ALTERACAO_MOTIVO, joinColumns = {

@JoinColumn(name = ALTERACAO, referencedColumnName = ID, nullable = false)}, inverseJoinColumns = {

@JoinColumn(name = MOTIVO, referencedColumnName = ID, nullable = false)})

@ManyToMany()

public Set getMotivoList()

{

return motivoList;

}

}

So que nao recupera por EAGER… dar erro multiple bags… acho q isso é ate uma deficiencia do hibernate, me corrijam se eu estiver errado!
Eu quero trazer todos os ‘motivos’ a partir do Objeto ‘Alteracao’ no momento de execucao…
Como eu faço isso nao sendo EAGER, como faria essa busca manualmente…???

Eu teria quer criar uma entidade pra Representar ‘ALTERACAO_MOTIVO’ ???

Sua duvida tbm eh essa fallante???

fallante

No meu caso esta resolvido.
Estava dando bobeira.

era soh dar um getProdutos().

" estava com a caneta na mao e procurando"

Resolvido o meu

Criado 15 de junho de 2011
Ultima resposta 15 de jun. de 2011
Respostas 2
Participantes 2