나는 다음과 같은 기관이 있습니다JPA 추상적 인 관계로 2 Inheritance.TABLE_PER_CLASS
@Entity
public class Owner{
@Id
@Column(name = "OWNER_ID")
@OneToMany()
@JoinColumn(name = "OWNER_ID")
private Set<Parent> parents;
...
}
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class Parent{
@Id
@Column(name = "PARENT_ID")
...
}
@Entity
public class ChildA extends Parent{
...
}
@Entity
public class ChildB extends Parent{
...
}
}
문제는 내가 부모 요소와 소유자를 유지하려고 할 때 다음과 같은 예외를 얻을 수 있습니다 :
를org.springframework.dao.InvalidDataAccessResourceUsageException : 콜렉션을 삽입 할 수 없습니다 : [sample.Owner.parents # 1]; SQL [업데이트 부모 세트 OWNER_ID =? 어디 PARENT_ID =?]; org.springframework.dao.InvalidDataAccessResourceUsageException : 콜렉션을 삽입 할 수 없습니다 : [sample.Owner.parents # 1]; SQL [업데이트 부모 세트 OWNER_ID =? 어디 PARENT_ID =?]; 중첩 예외는 org.hibernate.exception.SQLGrammarException입니다 : 컬렉션을 삽입 할 수 없습니다 : [sample.Owner.parents # 1] 중첩 예외는 org.hibernate.exception.SQLGrammarException입니다 : 컬렉션을 삽입 할 수 없습니다 : [sample.Owner.parents # 1 ]
상속 유형을 JOINED로 변경하면 올바르게 작동합니다. 자식 추상 클래스 대신 부모 추상 클래스를 유지하려고하는 이유에 대한 아이디어가 있습니까?
가 대단히 감사합니다, 당신이 정말로 묘책을 얻었다. – domgom