I have 2 entity named Machine
and MachineType
. Machine
can have only one MachineType
but MachineType
can have more than one or none Machine
. I try tons of relation annotation but I miss something.
Machine
@Entity
public class Machine {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
@Column(name = "machine_id")
private Long machineId;
@OneToOne(???)
private MachineType machineType;
@Column(name = "machine_name")
private String MachineName;
//getters and setters
}
MachineType
@Entity
public class MachineType {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private Long machineTypeId;
@ManyToOne(???)
private List<Machine> machines;
@Column(name = "machine_type_name")
private String machineTypeName;
//getters and setters
}
I dont understand mappedBy
and @JoinColumn
correctly and I stuck right now. When should I use them?