javax.persistence.ManyToOne – JPA-annotation

Definerer en enkeltværdiforbindelse til en anden enhedsklasse, der har mange-til-en-multiplicitet. Det er normalt ikke nødvendigt at angive målentiteten eksplicit, da den normalt kan udledes af typen af det objekt, der refereres til. Hvis relationen er bidirektionel, skal den OneToMany enhedsside, der ikke er ejer af relationen, bruge mappedBy-elementet til at angive relationsfeltet eller -egenskaben for den enhed, der er ejer af relationen.

Annotationen ManyToOne kan bruges inden for en embeddable klasse til at angive en relation fra den embeddable klasse til en entitetsklasse. Hvis relationen er tovejs, skal den OneToMany entitetsside, der ikke ejer OneToMany, bruge mappedBy-elementet i OneToMany-annotationen til at angive relationsfeltet eller -egenskaben for det indlejrede felt eller den indlejrede egenskab på den ejende side af relationen. Punkt (“.”) notationssyntaksen skal anvendes i mappedBy-elementet for at angive relationsattributten i den indlejrede attribut. Værdien af hver identifikator, der anvendes med punktnotationen, er navnet på det respektive indlejrede felt eller den respektive indlejrede egenskab.

Eksempel 1:

 @ManyToOne(optional=false) @JoinColumn(name="CUST_ID", nullable=false, updatable=false) public Customer getCustomer() { return customer; }

Eksempel 2:

 @Entity public class Employee { @Id int id; @Embedded JobInfo jobInfo; ... } @Embeddable public class JobInfo { String jobDescription; @ManyToOne ProgramManager pm; // Bidirectional } @Entity public class ProgramManager { @Id int id; @OneToMany(mappedBy="jobInfo.pm") Collection manages; } 

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.