Let's say I have Person
class Person{
    @Id Integer id;
    @OneToOne
    @JoinColumn(name = "person_id")
    Job myJob;
}
and Job
class Job{
    @Id Integer id;
    Integer person_id;
    @OneToOne
    @PrimaryKeyJoinColumn(name = "person_id")
    Person currentWorker;
}
I'm not able to map the Person and Job to other Entity, when fetching.
What mistake am I doing ?
Your code should be:
@Entity
public class Person implements Serializable {
    @Id Integer id;
    @OneToOne
    @JoinColumn(name = "id")
    Job myJob;
}
@Entity
public class Job implements Serializable {
    @Id Integer id;
    @OneToOne(mappedBy = "myJob")
    Person currentWorker;
}  
(pay attemption to remove duplicated colum 'person_id' from Job)
or other approach sharing primary key:
@Entity
public class Person {
    @Id Integer id;
    @OneToOne(cascade = CascadeType.ALL)
    @PrimaryKeyJoinColumn
    Job myJob;
}            
@Entity
public class Job {
    @Id Integer id;
} 
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With