프로젝트 일지

[🐾 일지] object references an unsaved transient instance - save the transient instance before flushing

Kamea 2023. 2. 1. 06:58

 

Station과 Video는 1:1 연관관계를 가지고 있다.

 

1. 프론트에서 video file과 station 정보들 입력받기

2. video를 데이터베이스에 저장

3. station의 정보를 저장하면서 video도 함께 저장해줌

 

이것이었는데 하다보니 오류가 났다.

 

 

Station은 video_id를 FK로 참조하고 있는데 video를 저장하지 않은 상태에서 참조하려다 보니 발생한 문제였다.

 

 

🍎 해결방법

@OneToOne → @OneToOne(cascade = CascadeType.ALL)

 

위와 같이 바꿔주어 영속성 전이 설정을 해준다.

 

Station이 저장될 때 Video도 함께 저장을 해주는 것이다. StackOverflow에서 찾아보니깐 나중에 삭제할 때 문제가 될 수도 있다고 하는데 @ManyToOne인 경우에 보통 그런 것 같다. 일단 써보고 또 오류가 나면 기록하겠음.