Skip to content

Instantly share code, notes, and snippets.

@dfreudenberger
Created December 10, 2017 14:36
Show Gist options
  • Save dfreudenberger/4200245f816c4e7aa108c0d4e48a6184 to your computer and use it in GitHub Desktop.
Save dfreudenberger/4200245f816c4e7aa108c0d4e48a6184 to your computer and use it in GitHub Desktop.
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
@Table
@Entity
public class EntityA
{
@Id
@GeneratedValue
private long id;
@OneToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@PrimaryKeyJoinColumn
private EntityB entityB;
}
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.MapsId;
import javax.persistence.OneToOne;
import javax.persistence.Table;
@Table
@Entity
public class EntityB
{
@Id
@Column(name = "a_id")
private Long id;
@MapsId
@OneToOne(mappedBy = "entityB")
@JoinColumn(name = "a_id")
private EntityA entityA;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment