Az OpenJPA megvalósításban, amikor egy viszony attribútumnak van egy
@OneToOne vagy egy @ManyToOne
annotációja egy @Column annotációval, akkor a
@Column annotáció úgy működik, mintha egy
@JoinColumn annotáció lenne. Az EclipseLink egy kivételt
dob, ami jelzik, hogy az egyedosztálynak a @JoinColumn
annotációt kell használnia a @Column helyett egy
viszony attribútum leképezéséhez.
Ez a szabály megjelöli a @Column annotációkat,
amelyek a OneToOne vagy ManyToOne
annotációkkal együtt vannak használatban.
A gyorsjavítás lecseréli a @Column annotációt
egy @JoinColumn annotációra.
Minden megfelelő annotáció attribútum át lesz másolva a
@JoinColumn annotációba.
A length, precision és scale
javax.persistence.Column elemek nem lesznek átmásolva.
Például ez a szabály megjelöli a Column annotációt a
következő osztályokban:
import javax.persistence.Entity; import javax.persistence.Column; import javax.persistence.Id; import javax.persistence.ManyToOne; @Entity public class TransactionEntity { @Id private int id; private long transactionNumber; private double amount; @ManyToOne @Column(name="account") private Account account; } |
A gyorsjavítás lecseréli a @Column annotációt egy
@JoinColumn annotációra, és biztosítja a megfelelő
importálásokat.
import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.ManyToOne; import javax.persistence.JoinColumn; @Entity public class TransactionEntity { @Id private int id; private long transactionNumber; private double amount; @ManyToOne @JoinColumn(name="account") private Account account; } |
A problémával és más OpenJPA - EclipseLink átállítási problémákkal kapcsolatos információkért tekintse meg az OpenJPA - EclipseLink JPA átállítás: Leképezések útmutatót.