当前位置:编程学习 > JAVA >>

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数组的动作去掉,再试试。。。 --------------------编程问答--------------------
引用 1 楼  的回复:
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相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,