2012-04-21 92 views
49

我使用Hibernate 3.6,我有這樣的代碼:休眠4.1Final替代的Hibernate.STRING

list =getSession().createSQLQuery(queryString) 
     .addScalar("UNAME",Hibernate.STRING) 
     .addScalar("COM",Hibernate.STRING) 
     .addScalar("COM_DATE",Hibernate.DATE) 
     .setString("id", Id).list(); 

現在我改變罐子從3.6到4.1Final

它好像addScalar方法是請求類型而不是Hibernate.STRING 我找不到任何熱的例子來解決這個問題。如果有誰知道請幫助我,謝謝。

回答

63

org.hibernate.Hibernate類型字段被棄用(和實際刪除),爲HHH-5196

現在不同休眠類型的結果可從Javadoc中可以找到爲Type。在你的情況下應該工作:

.addScalar("UNAME", StringType.INSTANCE) 
    .addScalar("COM", StringType.INSTANCE) 
    .addScalar("COM_DATE", DateType.INSTANCE) 
+5

而不是'Hibernate.STRING'一個可以用'StandardBasicTypes.STRING'還,該值是相同的('StringType.INSTANCE'),也許這個人是比較容易合併;-) – Betlista 2013-05-24 11:13:17