4.5 实训:用户资料管理

本节实训完成的目标是:
1 修改用户昵称

首先是根据用户名修改昵称的函数updateNickname:
/**
根据账号更新昵称;
@paramusername要更新的账号
@paramnickname新昵称
 */
public static void updateNickname(String username,String nickname){
    //要执行的sql语句,通过字符串拼接出来
    String SQLTEXT="update user set nickname='"+nickname+"' where  userName='"+username+"'";
    try{
        //使用上面的DBConifg类的getCon方法,建立一个连接
        Connection con=DBConfig.getCon();
        //准备执行sql的实体
        Statement stmt=con.createStatement();
        //执行sql,并把查询结果赋给rst
        stmt.executeUpdate(SQLTEXT);
        //后使用先关闭原则,关闭各个对象,特别是con如果不关闭,会造成连接泄露
        stmt.close();
        con.close();
    }
    catch(SQLException e){
        e.printStackTrace();
    }
}
和之前执行的SQL不一样的事,第16行执行的SQL使用的事executUpdate函数,其余是大同小异的,把这个函数复制到UserData。然后编写一个页面updateNickname.jsp,模仿登录页面,输入账号和新昵称,提交后修改昵称。

2 修改用户密码
模仿上面的函数,在UserData写一个updatePassword的函数,用来修改密码。
修改密码的界面要发送账号、旧密码、新密码,提交后的页面处理后先验证账号和旧密码是否能登录(调用UserData的userValidate函数),如果可以,则继续调用updatePassword函数完成修改密码。