0
를 사용하는 동안 멀리 간다, 내가 여기에이 주제에 대한 거의 모든 질문에 겪었 하지만 그들 중 누구도매핑 예외 <code>@ElementCollection</code></p> <p>오류를 사용하는 동안 나는 최대 절전 모드에서 매핑 예외를 얻고있다 @ElementCollection
다음는 Entity 클래스 아래
@Entity
public class UserDetails {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="ID")
int id;
@Column(name="NAME")
String name;
@Column(name="ADDRESS")
String address;
@ElementCollection(targetClass=String.class)
@CollectionTable(name="HOBBIES",[email protected](name="ID"))
@Column(name="HOBBIES")
List<String> hobbies;
@Column(name="INTEREST")
String interest;
내 문제가 해결되지하면 관련 로그 메시지
입니다 0Caused by: org.hibernate.MappingException: Could not determine type for: java.util.List, for columns: [org.hibernate.mapping.Column(HOBBIES)]
at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:266)
at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:253)
at org.hibernate.mapping.Property.isValid(Property.java:185)
at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:410)
at org.hibernate.mapping.RootClass.validate(RootClass.java:192)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1099)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1284)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:860)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:779)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
... 82 more
라이브러리에서 jpa 버전을 정확히 찾을 수 없어서 pom.xml
을 공유하고 있습니다.
다음은 내 현재 pom.xml
내 마지막에 아래에 추가 한 hibernate
<!-- Hibernate resources -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.3.0.ga</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.3.1.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.3.2.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.0.Final</version>
</dependency>
에 모두 작동하지, 내가 5.1.0.Final
에 3.6.7.Final
에서 hibernate-entitymanager
버전을 변경 한
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.0.Final</version>
</dependency>
시도이다.
jpa/hibernate 버전을 사용하고 계십니까? ElementCollection의 가져 오기 라이브러리를 공유하십시오. –
@KhalilM 질문을 업데이트했습니다. –
로컬 컴퓨터에서 코드를 실행했는데 제대로 작동합니다! 나는'hibernate-core : 5.0.11','hibernate-entitymanager : 5.0.11' 및'hibernate-jpa-2.1-api'' 1.1.0 Final을 사용하고 있습니다. –