通過Hibernate?做查詢操作的時候總是報出這樣的錯:
users is?not?mapped.
於是乎去檢查了下映射,發現沒問題呀,反覆驗證結果還是一樣報錯。
User.hbm.xml:
<class name="com.lian.bean.User" table="users">
hibernate.cfg.xml:
<mapping resource="com/lian/bean/User.hbm.xml" />
在網上找了很多,但還是不給力,大家都沒提些有建設性的解決方案,基本上都是說配置有問題。
不過自己感覺是這個出問題:
String sql = "select u.password from users u where u.username='" +user.getUsername()+ "'";
經過多番糾結和耐心查找資料,發現:
原來 HQL語句中表名應該是ORM映射的類名,所以應該改成:
String sql = "select u.password from User u where u.username='" +user.getUsername()+ "'";