Compreendendo MappedBy em JPA e Hibernate
Em estruturas de mapeamento objeto-relacional (ORM) como JPA e Hibernate, MappedBy é uma anotação útil para estabelecer relacionamentos bidirecionais entre classes de entidade. Esta anotação é usada no contexto de relacionamentos um para muitos e muitos para um.
Uso recomendado
O uso recomendado de MappedBy é o seguinte:
Finalidade de MappedBy
MappedBy serve vários propósitos:
Exemplo
No exemplo fornecido, Airline possuindo muitos AirlineFlights e AirlineFlights pertencentes a uma companhia aérea, MappedBy deve ser usado na classe AirlineFlight da seguinte forma:
@Entity
@Table(name="AirlineFlight")
public class AirlineFlight {
// ... other attributes ...
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="IDAIRLINE", nullable=false)
@MapsId
private Airline airline;
// ... other attributes ...
}
Neste exemplo, a anotação @MapsId indica que o campo IDAIRLINE em AirlineFlight é usado como restrição de chave estrangeira para a entidade Airline. Usando MappedBy aqui, você pode estabelecer um relacionamento bidirecional entre Airline e AirlineFlight sem a necessidade de restrições de chave estrangeira em ambas as tabelas.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3