我正在将Hibernate hbm.xml文件转换为hibernate注释, 当我使用下面的代码时,我总是得到一个 无法解析属性“ P hone”(大写第一个字母)错误
我不知道为什么hibernate将“phone”更改为“Phone”(手机是Phone.class中带有getter“getPhone”的字段)
public List<Phone> findAllPhones(Orderergroup orderergroup,
Suppliercategory suppliercategory) {
Criteria crit = getSession().createCriteria(Phone.class, "t")
.add(Restrictions.eq("phone", orderergroup));
if (suppliercategory != null && suppliercategory.getId() != null) {
crit.add(Restrictions.eq("phone", suppliercategory));
}
return crit.list();
}
在Phone.class中,supcat像这样映射
@ManyToOne(targetEntity = Suppliercategory.class, optional = false, fetch = FetchType.LAZY)
@JoinColumn(name = "SUPCAT_id", nullable = false)
private Suppliercategory supcat;
旧的.hbm.xml文件包含
<many-to-one name="Supcat" class="Suppliercategory"
not-null="true" unique-key="unique_phone">
<column name="SUPCAT_id" />
</many-to-one>
有谁知道我的问题可能是什么原因?
我正在使用hibernate 3.0,最后我想使用最新版本。