@Target(value={METHOD,FIELD}) @Retention(value=RUNTIME) public @interface OneToOne
Example 1: One-to-one association that maps a foreign key column
On Customer class:
@OneToOne
@JoinColumn(
name="CUSTREC_ID", unique=true, nullable=false, updatable=false)
public CustomerRecord getCustomerRecord() { return customerRecord; }
On CustomerRecord class:
@OneToOne(mappedBy="customerRecord")
public Customer getCustomer() { return customer; }
Example 2: One-to-one association that assumes both the source and target share the same primary key values.
On Employee class:
@Entity
public class Employee {
@Id Integer id;
@OneToOne @PrimaryKeyJoinColumn
EmployeeInfo info;
...
}
On EmployeeInfo class:
@Entity
public class EmployeeInfo {
@Id Integer id;
...
}
public abstract Class targetEntity
Defaults to the type of the field or property that stores the association.
public abstract FetchType fetch
public abstract String mappedBy
Copyright © 2016. All rights reserved.