永发信息网

关于getHibernateTemplate().find()方法的问题

答案:2  悬赏:0  手机版
解决时间 2021-02-08 15:51
  • 提问者网友:轻浮
  • 2021-02-07 20:33
代码:List userlist = this.getHibernateTemplate().find(
"select u from Users u where u.username=? and password=?",
new Object[] { username , password });
数据库实例名是orcl。登录时报错,后台输出:
Hibernate: select users0_.USERID as USERID11_, users0_.USERNAME as USERNAME11_, users0_.PASSWORD as PASSWORD11_, users0_.NAME as NAME11_, users0_.REGISTERDATE as REGISTER5_11_, users0_.ZJLOGIN as ZJLOGIN11_ from orcl.USERS users0_ where users0_.USERNAME=? and users0_.PASSWORD=?
2010-05-10 21:12:02,593 ERROR [org.hibernate.util.JDBCExceptionReporter] - 为什么自动在表明前面加上orcl呢?在plsql中写sql,加上orcl的话也会提示“表或视图不存在”。这是什么问题呢?

实体类名和对应的表明都是Users 。我记得user是关键字,users不是关键字吧?
最佳答案
  • 五星知识达人网友:山君与见山
  • 2021-02-07 21:58
首先Hibernate是一个orm映射,hql语句后面跟的表名是数据库表对应的实体类的名字
Users是如果是用户数据库表名,请换成类名在试一下。
也有可能Users是关键词,换个名字试一下也许就可以了
全部回答
  • 1楼网友:拜訪者
  • 2021-02-07 22:37

gethibernatetemplate().find 用select top 5 * 报错是吧,那和你的应该是同理,hql可以自定义sql语句,应该可以

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯