属性映射的列数错误

时间:2019-10-07 13:44:39

标签: hibernate embeddable

我正在使用休眠4.2.21版本。我有部分实体,并且使用了@Embedded和@Embeddable批注。尝试运行项目时,它会给出异常;

  

属性映射的列数错误:com.demo.School.teacher类型:对象

学校实体类

@Entity(name = "School")
public class{
   public String schoolId;
   public String schoolName;

   @Embedded
   @AttributeOverrides({
      @AttributeOverride(name = "teacherName",column = @Column(name = "teacherName")),
      @AttributeOverride(name = "teacherPhone",column = @Column(name = "teacherPhone")),
   })
   @XmlElements({
      @XmlElement(name = "TeacherU", type = TeacherU.class),
      @XmlElement(name = "TeacherH", type = TeacherH.class)
   })
   public object teacher;

   //getters and setters 
}

教师(大学)实体班级

@Embeddable
public class TeacherU {
   public String teacherName;
   public String teacherPhone;

   //getters and setters 
}

教师(高中)实体班

@Embeddable
public class TeacherH {
   public String teacherName;
   public String teacherPhone;

   //getters and setters 
}

1 个答案:

答案 0 :(得分:0)

不应将老师声明为对象,更改

public object teacher;

public Teacher teacher;