| 
 | EclipseLink 1.1.1_ 1.1.1.v20090430-r4097 API Reference | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | |||||||||
@Target(value={TYPE,METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface AttributeOverride
The AttributeOverride annotation is used to 
 override the mapping of a Basic (whether explicit or 
 default) property or field or Id property or field.
 
 The AttributeOverride annotation may be 
 applied to an entity that extends a mapped superclass or to 
 an embedded field or property to override a basic mapping 
 defined by the mapped superclass or embeddable class. If the 
 AttributeOverride annotation is not specified, 
 the column is mapped the same as in the original mapping.
 
Example: @MappedSuperclass public class Employee { @Id protected Integer id; @Version protected Integer version; protected String address; public Integer getId() { ... } public void setId(Integer id) { ... } public String getAddress() { ... } public void setAddress(String address) { ... } } @Entity @AttributeOverride(name="address", column=@Column(name="ADDR")) public class PartTimeEmployee extends Employee { // address field mapping overridden to ADDR protected Float wage(); public Float getHourlyWage() { ... } public void setHourlyWage(Float wage) { ... } }
Embedded, 
Embeddable, 
MappedSuperclass| Required Element Summary | |
|---|---|
|  Column | column(Required) The column that is being mapped to the persistent attribute. | 
|  java.lang.String | name(Required) The name of the property whose mapping is being overridden if property-based access is being used, or the name of the field if field-based access is used. | 
| Element Detail | 
|---|
public abstract java.lang.String name
public abstract Column column
| 
 | EclipseLink 1.1.1_ 1.1.1.v20090430-r4097 API Reference | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | |||||||||