com.mysql.jdbc.exceptions.MySQLSyntaxErrorException:未知列,休眠

时间:2011-03-21 06:13:12

标签: hibernate persistence

当我使用hibernate beans类调用Hibernate Criteria时,我收到此错误。这是我的hibernate bean:

@Id 
@Column(name="AD_ID")
private String adId;

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

@Column(name="NEED_CORRECTION_DATE")
private Date needCorrectionDate;

private Date toDate;

public String getAdId() {
    return adId;
}
public void setAdId(String adId) {
    this.adId = adId;
}
public String getVendorLoginId() {
    return vendorLoginId;
}
public void setVendorLoginId(String vendorLoginId) {
    this.vendorLoginId = vendorLoginId;
}
public Date getNeedCorrectionDate() {
    return needCorrectionDate;
}
public void setNeedCorrectionDate(Date needCorrectionDate) {
    this.needCorrectionDate = needCorrectionDate;
}
public void setToDate(Date toDate) {
    this.toDate = toDate;
}
public Date getToDate() {
    return toDate;
}

我在hibernate bean中使用了一个属性,它没有映射到表的任何列。我这样做是因为我不想在DAO中使用表单bean,这就是为什么我创建了一个新属性并将表单bean的值设置为hibernate bean然后运行一个Criteria。但这给了我错误:

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown column 'this_.toDate' in 'field list'

请告诉我如何处理此错误,或者更好的方法将数据从“表单bean”传输到休眠DAO。或者任何注释告诉hibernate不用表绑定该属性。

由于 沙姆斯

1 个答案:

答案 0 :(得分:2)

我找到了答案。

我刚刚在该属性上添加了@Transient。 它工作正常......