this.getHibernateTemplate().find查询数据库后返回为空值
用SSH做的登录,在登录页面输入用户名密码后,不能登录成功,发现是下面的代码出了问题,在使用this.getHibernateTemplate().find(。。。。)后返回list1为空,数据库有值.
public List<Useraa> query( Useraa user) throws Exception {
List<Useraa> list1=new ArrayList<Useraa>();
list1= this.getHibernateTemplate().find(
"from Useraa where username=? and password=?",
new Object[] { user.getUsername(), user.getPassword() }); return list1;
}
后来把代码改成如下:可以登录成功
public List<Useraa> query( Useraa user) throws Exception {
List<Useraa> list1=new ArrayList<Useraa>();
list1= this.getHibernateTemplate().find(
"from Useraa where username='"+user.getUsername()+"' and password='"+user.getPassword()+"' "); return list1;
}
求指教,怎么会产生这种原因 --------------------编程问答-------------------- find使用的参数不是Object[]吧。。。应该是Object...objs吧
你把之前的改一下:
list1= this.getHibernateTemplate().find(
"from Useraa where username=? and password=?",
user.getUsername(), user.getPassword());
把new数组的动作去掉,再试试。。。 --------------------编程问答--------------------
没有你这种方法,我上面写的方法没错,这里find有3种格式:
find(String queryString),
find(String queryString,object value),
find(String querySting,Object[]values);
我写的就是第三种
补充:Java , Java相关