Note: This ORM/SQL annotation is silently ignored by ObjectDB

334 words

javax.persistence.AssociationOverrides - JPA annotation

javax.persistence
Annotation AssociationOverrides

Target:
Classes and fields (including property get methods)
Used to override mappings of multiple relationship properties or fields.

Example:

    @MappedSuperclass
    public class Employee {
 
        @Id protected Integer id;
        @Version protected Integer version;
        @ManyToOne protected Address address;
        @OneToOne protected Locker locker;
 
        public Integer getId() { ... }
        public void setId(Integer id) { ... }
        public Address getAddress() { ... }
        public void setAddress(Address address) { ... }
        public Locker getLocker() { ... }
        public void setLocker(Locker locker) { ... }
        ...
    }
 
    @Entity
    @AssociationOverrides({
        @AssociationOverride(
                   name="address", 
                   joinColumns=@JoinColumn("ADDR_ID")),
        @AttributeOverride(
                   name="locker", 
                   joinColumns=@JoinColumn("LCKR_ID"))
        })
    public PartTimeEmployee { ... }
Since:
JPA 1.0
See Also:
AssociationOverride
(Required) The association override mappings that are to be applied to the relationship field or property .
(Required) The association override mappings that are to be applied to the relationship field or property .
Since:
JPA 1.0

This documentation page is derived (with some adjustments) from the open source JPA 2 RI (EclipseLink)
and is available under the terms of the Eclipse Public License, v. 1.0 and Eclipse Distribution License, v. 1.0.
Object Relational Mapping (ORM) JPA 2 providers include Hibernate, EclipseLink, TopLink, OpenJPA and DataNucleus.
Object DB is not an ORM JPA implementation but an Object Database for Java with built in JPA 2 support.