今天上午本身試着用Hibernate去搭建一個Web工程,而後去實現一個簡單的查找操做。sql
經過Hibernate作查詢操做的時候老是報出這樣的錯:
student is not mapped.
因而乎去檢查了下映射,發現沒問題呀,反覆驗證結果仍是同樣報錯。
在網上找了不少,但仍是不給力,你們都沒提些有建設性的解決方案,基本上都是說配置有問題。
不過本身感受是這個出問題:
String sql = "select age ,name from student s where s.name='" +user.getUsername()+ "'";
通過多番糾結和耐心查找資料,發現:
原來 HQL語句中表名應該是ORM映射的類名,因此應該改爲:
String sql = "select age ,name from Student s where s.name='" +user.getUsername()+ "'";數據庫
student是數據庫表名app
Student是映射的類名。spa
總結:HQL裏的sql語句 from後面用的名稱是ORM 裏與表名映射的 類名,不是普通的表名。與SQL語句有必定的區別。get