Este relacionamento informa que o registro de uma entidade está relacionado com vários registros de outra entidade.
Exemplo de relacionamento Um-para-Muitos unidirecional, no qual uma Aula pode ter várias Tarefas:
Script do banco de dados:
Modelo UML:
Neste exemplo definimos que uma Aula possui uma lista de Tarefa, ou seja, a aula pode não ter tarefa, pode ter apenas uma tarefa ou pode ter varias tarefas, uma Tarefa não precisa saber de qual Aula ela está associada, portanto temos um relacionamento unidirecional.
Código fonte das classes com o relacionamento:
Na classe Aula utilizamos a anotação javax.persistence.OneToMany no atributo tarefas, para informar que uma Aula está associada com várias tarefas.
javax.persistence.OneToMany
Esta anotação define uma associação com outra entidade que tenha a multiplicidade de um-para-muitos.
Propriedades
Descrição
cascade
As operações que precisam ser refletidas no alvo da associação.
fetch
Informa se o alvo da associação precisa ser obtido apenas quando for necessário ou se sempre deve trazer.
mappedBy
Informa o atributo que é dono do relacionamento.
targetEntity
A classe entity que é alvo da associação.
A classe Tarefa é uma entidade normal que não conhece a classe Aula.