在一个ssh demo 中 业务逻辑层 中 写的 String hql = "from Account user where user.employeeName = '"+object.getEmployeeName()+"'";
调用dao层的 search()
super.getHibernateTemplate().find(hql) 居然没有查询出结果, 我用sql 测试过了 数据是确实存在的, 而hql语句经过 System 输出到 console 也没有问
题 看看DAO层的hql语句 : from Account user where user.employeeName = '刘总'
郁闷这个super.getHibernateTemplate().find(hql) 哪里出了问题
看了上面的import org.springframework.orm.hibernate3.support.HibernateDaoSupport
这个包也没问题的
------解决方案--------------------
String hql = "from Account user where user.employeeName = '"+object.getEmployeeName()+"'";
这样写是错误的
getHibernateTemplate.find("from Account user where user.employeeName =?",object.getEmployeeName());
这样就可以了
------解决方案--------------------
LZ这样写试试:
getHibernateTemplate.find("from Account user where user.employeeName =?",object.getEmployeeName());
------解决方案--------------------
楼层太多,没都看完.object.getEmployeeName()应该是得到String类型吧`LZ把=改成like试试.
getHibernateTemplate.find("from Account user where user.employeeName like ?",object.getEmployeeName());