【发布时间】:2014-04-25 14:32:51
【问题描述】:
我正在对遗留系统进行一些改进,有一段时间了
我有这样的课
class MyPersistentClazz
{
private String aTPlace;
public void setATPlace(.......){......}//yes mistyping
@Column(name="atPlaceOrder")
public String getATPlace(){return aTPlace;}
}
他们通常使用这个方法加载这个类
final MyPersistentClazz clazz = (MyPersistentClazz)session.createCriteria(MyPersistentClazz.class).add(idEq(id)).uniqueResult();
并使用 load 和 get 方法并且工作正常。
但是当我使用投影时会出现问题。
final Projection p=Projections.projectionList().add(Projections.property("d.aTPlace"),"aTPlace");
抛出
Exception in thread "main" org.hibernate.QueryException: could not resolve property:
我的问题是……
当使用投影时,我认为 Hibernate 正在调用每个属性的设置器,这个断言可以吗?
当使用 criteria.uniqueResult 或加载或获取 Hibernate 时使用单个字段属性访问?
或者为什么使用相同的二传手与某些人一起工作而不与其他人一起工作?
我们只使用注释而不是 XML。
非常感谢。
【问题讨论】:
标签: java hibernate projection