ORM/JPA
[JPA] OneToOne
잔망루피
2024. 3. 17. 17:09
반응형
Order와 UserOrder는 1:1 식별관계다.
MySQL의 Reverse Engineer로 테이블을 보면 1:N이 나와서 당황스러웠다. 🥹
결론은 코드에 문제 없다.
MySQL Reverse Engineer의 문제라고 함,,
orders 테이블
@Entity
@Builder
@AllArgsConstructor
@Table(name = "orders")
public class Order extends BaseTime {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "order_id")
private Long id;
@OneToOne(mappedBy = "order")
private UserOrder userOrder;
}
user_order
@Entity
@Builder
@AllArgsConstructor
public class UserOrder {
@Id private Long id;
@MapsId
@OneToOne
@JoinColumn(name = "user_order_id", referencedColumnName = "id")
private Order order;
@Column(nullable = false)
private Integer userId;
}
참고 👇👇👇
https://stackoverflow.com/questions/62378342/hibernate-create-onetomany-instead-of-onetoone
반응형