gpt4 book ai didi

hibernate - 属性映射有错误的列数异常 - Play Framework

转载 作者:行者123 更新时间:2023-12-03 07:59:23 26 4
gpt4 key购买 nike

我是游戏框架的初学者。再次询问有关 JPA 和游戏框架中的映射的问题,

我有一个由一对一关系绑定(bind)的学生表和导师表。

学生表:

id, name, class, grade

导师表:
id, name, department, student_id

在上述情况下,导师可能会或可能不会将学生绑定(bind)到他/她。我正在使用一对一映射制作导师模型,
@OneToOne
@JoinColumn(name="fk_student_id", referencedColumnName="id")
private student Student;

当我尝试运行它时,我得到一个

发生 JPA 错误(无法构建 EntityManagerFactory):属性映射的列数错误:models.Mentor.student 类型:models.Student。

我确定我已将所有学生字段映射如下,

学生.java
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private long id;

@Column(name="name")
private String name;

@Column(name="class")
private String cls;

@Column(name="grade")
private String grade;

我在这里想念什么?

谢谢你的时间。

问候,
阿比

最佳答案

你确定这是 Play Framework 的工作代码吗?创建模型时,Play 和标准 JPA 之间存在一些差异。这个片段:

@OneToOne
@JoinColumn(name="fk_student_id", referencedColumnName="id")
private student Student;

是错的。应该是这样的
@OneToOne
@JoinColumn(name="fk_student_id") //removed the id reference, let JPA manage it
public Student student; //note order of class and var name

此外,您正在定义一个“id”字段,当您从 Model 扩展时不需要该字段。您是从模型扩展而来的吗?

关于hibernate - 属性映射有错误的列数异常 - Play Framework ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6488447/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com