This is mainly a note to self because I screw up every time I need to write something like that, so here’s an example for myself in the future.
@Entity
@Table( name = "master" )
public class Master {
@Id
@GeneratedValue( generator = DBConstants.MASTER_SEQ )
@SequenceGenerator( name = DBConstants.MASTER_SEQ, sequenceName = DBConstants.MASTER_SEQ )
private long id;
@OneToOne( fetch = FetchType.LAZY, optional = false, targetEntity = Detail.class, cascade = CascadeType.ALL )
@PrimaryKeyJoinColumn
private Detail detail;
// ...
}
@Entity
@Table( name = "master_detail" )
public class Detail {
@Id
@GeneratedValue( generator = DBConstants.DETAIL_SEQ )
@SequenceGenerator( name = DBConstants.DETAIL_SEQ, sequenceName = DBConstants.DETAIL_SEQ )
private long id;
// ...
}
Reference: java.sun.com, Tadtech
1 Comment