UserDao中用 executeUpdate更新数据库失败
页面没有报错,找了好久。。。
- public boolean updateUser(String username,String oldpwd,String password,String phone,String send_address) {
- String hql="update User set password=:password,phone=:phone,send_address=: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 等的值
- System.out.println(username);
- System.out.println(oldpwd);
- System.out.println(password);
- System.out.println(phone);
- System.out.println(send_address);
也有哦!
3.是不是你的数据库的 username password 没有这样一条记录啊?还是你输入的东西前面有空格
那要怎么样除去空格
trim
username=username.trim()
然后就更新成功!
老师好厉害,三句点中要害!!!
转载于:https://blog.51cto.com/5456032/1105403