Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JPA数据库列,列为列_Jpa_Jpa 2.0_Jpa 2.1 - Fatal编程技术网

JPA数据库列,列为列

JPA数据库列,列为列,jpa,jpa-2.0,jpa-2.1,Jpa,Jpa 2.0,Jpa 2.1,我在一个有多项选择题的测验平台上工作,只接受了一个正确答案,但我现在正在调整它以接受不止一个。我正在将答案选项转换为列表,但我开始出现错误,因为我无法将列表作为列。我该怎么修 @实体 @鉴别器值(问题、问题类型、多项选择题) 公共类MultipleChiceAnswer扩展了AnswerDetails{ @多通(targetEntity=Option.class,cascade=CascadeType.ALL) @JoinColumn(name=“option\u id”) 私有列表选项=nul

我在一个有多项选择题的测验平台上工作,只接受了一个正确答案,但我现在正在调整它以接受不止一个。我正在将答案
选项
转换为
列表
,但我开始出现错误,因为我无法将列表作为列。我该怎么修

@实体
@鉴别器值(问题、问题类型、多项选择题)
公共类MultipleChiceAnswer扩展了AnswerDetails{
@多通(targetEntity=Option.class,cascade=CascadeType.ALL)
@JoinColumn(name=“option\u id”)
私有列表选项=null;
/*原来:
@许多酮
@JoinColumn(name=“option\u id”)
私人选择权;
*/
//...
}


@实体
@鉴别器值(问题、问题类型、多项选择题)
公共类multipleChiiceAnswerItem扩展了QuestionAnswerItem{
//修正:错误在这里:
私有列表选项ID=null;
//原来是:私有整数optionId;
//...
@实体
@表(name=“问题\答案\项目”,
索引={
@索引(name=“question\u answer\u items\u indx\u 0”,columnList=“quick\u id”),
})
@继承(策略=InheritanceType.SINGLE_表)
@鉴别器列(name=“question\u answer\u type”,
columnDefinition=“varchar(32)非空默认值‘多选’,
discriminatorType=discriminatorType.STRING)
公共抽象类问题解答项目{
@身份证
@GeneratedValue(策略=GenerationType.IDENTITY)
私有整数id;
//...
我开始发现这个错误:

java.lang.IllegalStateException:未能加载ApplicationContext 原因:org.springframework.beans.factory.BeanCreationException:创建名为“entityManagerFactory”的bean时出错,该bean在类路径资源[org/springframework/boot/autoconfigure/orm/jpa/hibernatejpacConfiguration.class]中定义:初始化方法调用失败;嵌套异常为javax.persistence.PersistenceException:[PersistenceUnit:default]无法生成Hibernate SessionFactory;嵌套异常为org.Hibernate.MappingException:无法确定以下列的类型:java.util.List,位于表:问题\答案\项:[org.Hibernate.mapping.Column(选项\ id)] 原因:javax.persistence.PersistenceException:[PersistenceUnit:default]无法构建Hibernate SessionFactory;嵌套异常为org.Hibernate.MappingException:无法确定以下列的类型:java.util.List,位于表中:问题\答案\项:[org.Hibernate.mapping.Column(选项\ id)] 导致原因:org.hibernate.MappingException:无法确定列:[org.hibernate.mapping.Column(option\u id)]


不能在一列中存储多个值。因此,如果使用了错误的映射,则必须创建一个单独的表。列表应使用一个OneToMany。多个OneTone将用于映射相同的关系,以表示每个选项(多个)具有一个关联的MultipleChiceAnswer,并且需要选项表中的外键。或者需要一个类似于多个映射的单独关系表。