Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

jpa hibernate

Boa tarde, tenho uma duvida com o seguinte problema :

@onetomany

chave estrangeira que ainda nao tenho conhecimento.

[codigo]
classe recibo{
@id
@Generated
integer id;
LocalDate vencimento;
@OnetoOne
Cliente  cliente
@OneToMany
List<ItenRecibo> itens;
....
}
classe itemRecibo{
@id
integer idrecibo;
@id
integer iditem;
String referencia;
BigDecimal valor;

get/sst
}

como testar estas classe opreencher

Recibo frecibo = new Recibo(Localdate.now() );

List<itemRecibo> itens = ""

new DaoRecibo().save(recibo);

como passar isso para o metodo save, pois a classe itemrecibo tem chave concatenada.

Obrigado, pela atenção

4 respostas

Oi Marcos, tudo bem ?

Cara você precisaria passar itens que já estão salvos no banco.

Sobre você ainda não conhecer chaves estrangeiras não tem problema, acredito que você possa fazer algum curso de banco de dados aqui na plataforma, que vai te ajudar a entender melhor esses conceitos.

List<itemRecibo> itens = new ArrayList<>();

ItemRecibo item = new ItemRecibo();
itens.add(item);

recibo.setLista(itens);

Obrigado persistir a classe titulo, ja que ela tem uma lista de itens.

meu problema e o mapeamento para o jpa hibernate.

neste exemplo como mandar gravar ?

ja que a lista nao tem ainda o codigo do titulo ?

no meu esta dando erro do hibernate.

Obrigado pela atencao

Marcos,

A ideia como te disse é que a lista venha do banco, você tem que ter objetos gerenciados pela jpa para poder armazenar no banco.

https://www.alura.com.br/curso-online-persistencia-de-objetos-com-jpa-hibernate

Dá uma olhada nesse curso, vai te ajudar fortemente nos conceitos

solução!

Boa noite. resolvi. Eu esta trazendo conceitos de banco para dentro da minha classe.

Bastrou fazer o seguinte na classe item: classe itemRecibo{ @id Recibo recibo < -- aqui relaciona as duas classes @id integer iditem; String referencia; BigDecimal valor; gets//sets entao quando pasar a clase recibo para o dao o hibernate estara com as duase nao da mais erro.

Quanto a ideia e que a lista venha do banco ? nao entendi antes de vir do banco tera que ser persistida não ?

Obrigado pela ajuda talvez nao tenha me expressado bem. O importante e que entendi o funcionamento de um para muitos