我是Hibernate的新手,我尝试过一对一的关系,但是显示了这个错误:
org.hibernate.QueryException: could not resolve property: Grupos of: com.seguridad.modelos.Empleados [ from com.seguridad.modelos.Empleados e left join e.Grupos g where e.idJefe=:supervisor order by nombre]
我有两张桌子:Empleados和Grupos就像这样:
表Empleoyess:
idEmpleado(key)| nombre | aPat | aMat | GRUPO
表格Grupos
id(key)| nombre | fecha |
Empleados(Empleoyess)和Grupos(群组)中的关系是Empleados.grupo = Grupos.id
@Entity()
@Table(name="empleados")
@org.hibernate.annotations.Entity(dynamicUpdate = true)
public class Empleados implements Serializable {
private String nombre;
private String aPat;
private String aMat;
@Column(name="grupo")
private Integer idGrupo;
@OneToOne
@JoinColumn(name = "id",insertable = false, updatable = false)
private Grupos grupos;
//GETTER AND SETTERS
}
@Entity()
@Table(name="grupos")
public class Grupos implements Serializable {
@Id @GeneratedValue
private Long id;
private String nombre;
@Temporal(javax.persistence.TemporalType.TIMESTAMP)
private Date fecha;
//GETTER AND SETTERS
}
这是我的查询
来自com.seguridad.modelos.Empleados e left join e.Grupos g where e.idJefe = 5
并在之前显示错误,但如果我尝试:
来自Empleados e,Grupos g,其中e。 idJefe = 5,e.idGrupo = g.id,由e.nombre命令
是成功的,我不明白错误在哪里,其他帖子讲述语法,但我相信我的语法是正确的
问候并感谢!
答案 0 :(得分:0)
您的字段的名称为grupos
,而不是Grupos
。案件很重要。