Close

JPA - @AssociationOverrides Examples

JPA JAVA EE 


@AssociativeOverrides is used to override mappings of multiple relationship properties or fields. To override a mapping defined by a mapped superclass or a relationship mapping from an embeddable class, @AssociationOverride is applied to the entity class.


package com.logicbig.example;

import javax.persistence.*;

@Entity
public class EntityA {
@Id
@GeneratedValue
private int id;

@Embedded
@AttributeOverrides({
@AttributeOverride(name = "myStr", column = @Column(name = "MY_STR_COL1"))
})
@AssociationOverrides({
@AssociationOverride(
name = "entityBRef", joinColumns = @JoinColumn(name = "EntityAB_JOIN1"))
})
private ClassA classARef;

@Embedded
@AttributeOverrides({
@AttributeOverride(name = "myStr", column = @Column(name = "MY_STR_COL2"))
})
@AssociationOverrides({
@AssociationOverride(
name = "entityBRef", joinColumns = @JoinColumn(name = "EntityAB_JOIN2"))
})
private ClassA classARef2;

public ClassA getClassARef() {
return classARef;
}

public void setClassARef(ClassA classARef) {
this.classARef = classARef;
}

public ClassA getClassARef2() {
return classARef2;
}

public void setClassARef2(ClassA classARef2) {
this.classARef2 = classARef2;
}

@Override
public String toString() {
return "EntityA{" +
"id=" + id +
", classARef=" + classARef +
", classARef2=" + classARef2 +
'}';
}
}
Original Post




See Also