Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Movimentação tem conta mas poderia ser a conta ter movimentações?

Nos exemplos, N movimentações estão relacionadas a uma conta....o que caracterizou o @ManyToOne

Poderia este relacionamento não estar na movimentação e sim na Conta? Como um List e consequentemente um relacionamento @OneToMany ???

Em caso de sim.... o que muda? É uma questão de escolha? Ou tem algum tipo de vantagem?

1 resposta
solução!

Fernando bom, sim poderia estár na sua conta e também na sua movimentação, algo como.

public class Movimentacao {
    @ManyToOne
    private Conta conta = new Conta();
}
public class Conta {
    @OneToMany(mappedBy = "conta")
    private List<Movimentacao> movimentacoes = new ArrayList<>();
}

O que acontace aqui, o jpa sempre vai levar a chave estrangeira quando você o mapeamento acaba com one, então na sua tabela movimentacao irá ter uma chave estrangeira da conta, certo?

Aqui deixamos o relacionamento bidiricional, quanto a classe movimentacao e conta se e relacionam, como pode ver, acho que a principal vantagem desse relacionamento é que as 2 classes podem ser conversar, como pode ver, na classe Conta tem um atributo do tipo List que é da movimentacao e na classe Movimentacao temos o atributo conta.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software