javax.persistence.ManyToOne – JPA-annotaatio

Määrittää yksiarvoinen assosiaatio toiseen olioluokkaan, jolla on moni-yksi-kertaisuus. Tavallisesti kohdeoliota ei tarvitse määrittää eksplisiittisesti, koska se voidaan yleensä päätellä viitattavan objektin tyypistä. Jos suhde on kaksisuuntainen, ei-omistavan OneToMany-olion puolen on käytettävä mappedBy-elementtiä suhteen omistavan olion suhteen kentän tai ominaisuuden määrittämiseen.

ManyToOne-merkintää voidaan käyttää upotettavan luokan sisällä määrittämään suhde upotettavasta luokasta olioluokkaan. Jos suhde on kaksisuuntainen, ei-omistavan OneToMany-olion puolen on käytettävä OneToMany-merkinnän mappedBy-elementtiä suhteen omistavan puolen upotettavan kentän tai ominaisuuden suhteen kentän tai ominaisuuden määrittämiseen. mappedBy-elementissä on käytettävä pisteen (”.”) merkintäsyntaksia ilmaisemaan suhdeattribuutti upotetun attribuutin sisällä. Jokaisen pisteen kanssa käytetyn tunnisteen arvo on kyseisen upotetun kentän tai ominaisuuden nimi.

Esimerkki 1:

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

Esimerkki 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; } 

Vastaa

Sähköpostiosoitettasi ei julkaista.