OpenJPA에서 java.util.Collection<E> 인터페이스에서 상속한 속성은 기본 지속적
유형이 아니므로 어노테이션이 없는 경우 이러한 속성은 지속되지 않습니다.
EclipseLink에는 다른 기본 동작이 있고 이러한 속성을 데이터베이스로 지속하려고
합니다. 어노테이션이 없는 콜렉션 속성을 무시하는 OpenJPA 동작을 계속하려면 EclipseLink에서
javax.persistence.Transient 어노테이션을 이러한 속성에 추가하십시오.
이 규칙은 다음 하위 인터페이스를 포함하여 java.util.Collection<E> 인터페이스에서 상속하는 JPA
어노테이션이 없는 속성에 플래그를 지정합니다.
다음 엔티티 클래스에서 collectionField 및 listField
속성은 규칙에 의해 플래그 지정됩니다.
가져오기 java.util.Collection; 가져오기 java.util.List; 가져오기 javax.persistence.Entity; 가져오기 javax.persistence.Id; @Entity 공용 클래스 UnannotatedCollectionEntity { @Id private int id; private Collection collectionField; private List listField;}
자동 수정은 @Transient 어노테이션과 가져오기 문을 추가합니다.
가져오기 java.util.Collection; 가져오기 java.util.List; 가져오기 javax.persistence.Entity; 가져오기 javax.persistence.Id; 가져오기 javax.persistence.Transient; @Entity 공용 클래스 UnannotatedCollectionEntity { @Id private int id; @Transient private 콜렉션 콜렉션 필드; @Transient private List listField;}
이 문제 및 기타 OpenJPA에서 EclipseLink로의 마이그레이션 문제에 대한 정보는 OpenJPA에서 EclipseLink JPA로 마이그레이션: 맵핑 안내서를 참조하십시오.