Intro (Business Context)

주문에 대한 로직 수정 중, Detached Entity Passed to Persist를 만나보았다.

우리의 엔티티에 대해서 돌아보게 되었다.

그러던 중 우리가 왜 MERGE 대신 PERSIST 를 사용하게 되었는지 기억이 안 났다.

@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Entity
@Table(name = "tb_order")
@Getter
@DynamicUpdate
@DynamicInsert
public class Order extends BaseEntity {
	,,,

    @JsonIgnore
    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
    private User buyer;

    @JsonIgnore
    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
    private User seller;
}

어떤 차이점이 있을까??

무슨 차이점??

velog