【发布时间】:2014-08-28 18:20:05
【问题描述】:
有谁知道我为什么会收到这个错误:
org.hibernate.QueryException: could not resolve property: Hermanos of: com.sahe.model.SalidasProcesionales [FROM com.sahe.model.SalidasProcesionales u LEFT JOIN FETCH u.Hermanos LEFT JOIN FETCH u.PTipoTramo LEFT JOIN FETCH u.Insignias]
当我调用这个方法时:
@Override
public List<SalidasProcesionales> findAll() {
List<SalidasProcesionales> listadoSalidasProcesionales = null;
Session sesion = HibernateUtil.getSessionFactory().getCurrentSession();
String hql = "FROM SalidasProcesionales u LEFT JOIN FETCH u.Hermanos LEFT JOIN FETCH u.PTipoTramo LEFT JOIN FETCH u.Insignias";
try {
sesion.getTransaction().begin();
listadoSalidasProcesionales = sesion.createQuery(hql).list();
sesion.getTransaction().commit();
} catch (Exception e) {
sesion.getTransaction().rollback();
e.printStackTrace();
}
return listadoSalidasProcesionales;
}
通过
this.salidasProcesionales = new ArrayList<SalidasProcesionales>();
谢谢。
实体是:
@实体 @Table(name = "salidas_procesionales", 目录 = "sahe") 公共类 SalidasProcesionales 实现 java.io.Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private Integer codigo;
private Insignias insignias;
private Hermanos hermanos;
private PTipoTramo PTipoTramo;
private int anyo;
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "codigo", unique = true, nullable = false)
public Integer getCodigo() {
return this.codigo;
}
public void setCodigo(Integer codigo) {
this.codigo = codigo;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "insignia", nullable = false)
public Insignias getInsignias() {
return this.insignias;
}
public void setInsignias(Insignias insignias) {
this.insignias = insignias;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "codigoHermano", nullable = false)
public Hermanos getHermanos() {
return this.hermanos;
}
public void setHermanos(Hermanos hermanos) {
this.hermanos = hermanos;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "tipoTramo", nullable = false)
public PTipoTramo getPTipoTramo() {
return this.PTipoTramo;
}
public void setPTipoTramo(PTipoTramo PTipoTramo) {
this.PTipoTramo = PTipoTramo;
}
@Column(name = "anyo", nullable = false)
public int getAnyo() {
return this.anyo;
}
public void setAnyo(int anyo) {
this.anyo = anyo;
}
}
我已经删除了长度的构造函数。
【问题讨论】:
-
请添加您的
SalidasProcesionales实体,并将Hermanos更改为hermanos。 -
嘿!你是对的!也许几个小时的编程不会让你看到这些小细节......谢谢!如果您创建一个答案,我可以给您一个积极的回应。
标签: hibernate