SSH项目,在DAO中使用hibernateTemplate的问题
一下是文件结构:
在执行UsersDAOImpl中的
public List<Users> findAll() { String hql = "from Users users"; List<Users> users = this.hibernateTemplate.find(hql); return users; }
是可以在网页上显示数据,当是执行下面代码的时候,网页提示500错误
public Users query(String username) { String hql = "from Users users where users.username=:n"; System.out.println("第一次的username"+username); List<Users> users = this.hibernateTemplate.findByNamedParam(hql, "n",username); System.out.println("第二次的username"+username); Users user = null; if (users != null && users.size() > 0) { user = users.get(0); } else { System.out.println("query():users.size= " + users.size()); } return user; }
username的传值是没问题的,第一次的username是可以在控制台正常输出,但是第二次的username没有数据,页面就报了500的错误,我单独执行了一下问题就在于
this.hibernateTemplate.findByNamedParam(hql, "n",username);
前面调用hibernateTemplate.find()方法是没有问题的,所以在声明hibernateTemplate是没有出错,这两个方法是UsersDAOImpl中,问题就是在findByNamedParam的调用出错了,有哪位好心人指点一下!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
终于找到解决的方法了,是因为antlr包冲突,把久版本移除掉问题就解决了