executeUpdate更新数据库失败解决
UserDao中用 executeUpdate更新数据库失败
页面没有报错,找了好久。。。
www.zzzyk.com
public boolean updateUser(String username,String oldpwd,String password,
String phone,String send_address) {
String phone,String send_address) {
String hql="update User set password=:password,phone=:phone,send_address=:
send_address where username=:username and password=:opwd ";
send_address where username=:username and password=:opwd ";
Query query=getSession().createQuery(hql);
query.setParameter("username", username);
query.setParameter("password", password);
query.setParameter("phone", phone);
query.setParameter("send_address", send_address);
query.setParameter("opwd", oldpwd);
int row=query.executeUpdate();
System.out.println(row);
System.out.println("+++++++++++++++++++++++++++++++++++++++++");
return row>0 ? true :false;
}
最后问了老师,老师就问了三个问题
1.你检查一下web.xml的open session in view 有没加上
有哦
2.那检查一下 username password phone 等的值
www.zzzyk.com
System.out.println(username);
System.out.println(oldpwd);
System.out.println(password);
System.out.println(phone);
System.out.println(send_address);
也有哦!
www.zzzyk.com
www.zzzyk.com
3.是不是你的数据库的 username password 没有这样一条记录啊?
还是你输入的东西前面有空格
还是你输入的东西前面有空格
那要怎么样除去空格
trim
username=username.trim()
然后就更新成功!
老师好厉害,三句点中要害!!!