2017-03-15 66 views
0

我正在使用Hibernate Criteria從我的表中的列mobileno獲取最大值。Hibernate(not JPA)Criteria - org.hibernate.QueryException:無法解析屬性:

但是,當我得到的結果,它拋出一個異常

org.hibernate.QueryException: could not resolve property: mobileno of: 

我的表bean屬性是:

@Column(name="id") 
private long id; 

@Column(name="code") 
private String code; 


@Column(name="mobileno") 
private String mobileno; 
//Setters and Getters 

Hibernate代碼:

@Override 
public long getMaxMobileNo() { 
Session session = entityManager.unwrap(Session.class); 
Criteria criteria = session.createCriteria(Data.class);  
criteria.setProjection(Projections.max("mobileno"));   
return (long) criteria.uniqueResult(); 
} 

我在哪裏出錯了,我如何從我的表中獲得最大值?

+1

「字符串」類型的「最大」? – nobeh

+0

@nobeh:是的。那就是問題所在? – user7646838

+0

Projections.max =屬性最大值。非常重要的是,mobileno的最大價值是什麼?我不知道預測,但似乎是數值。 – Nico

回答

0

它是一種解決辦法,但你爲什麼不使用

Query query = session.createSQLQuery("SELECT MAX(column_name) FROM table_name"); 

每一個休眠版本將快速的方式。

相關問題