兩畝三分地

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            17 隨筆 :: 20 文章 :: 2 評論 :: 0 Trackbacks
          UserServlet主要用于用戶登錄,退出以及密碼修改方面的事務(wù)。鑒于對網(wǎng)絡(luò)應(yīng)用的安全性考慮,
          所以user將被寫在session里面,用以在某些管理頁面達(dá)到認(rèn)證作用。
           1 private void login(HttpServletRequest request, HttpServletResponse response)
           2             throws ServletException, IOException {
           3         String userName = request.getParameter("username");
           4         String password = request.getParameter("password");
           5         String sql = "select id,username,password from users where username = ? and password = ?";
           6         String params[] = {userName, password};
           7         List users = null;
           8 
           9         QueryRunner qr = DbHelper.getQueryRunner();
          10         try {
          11             users = (List) qr.query(sql, new BeanListHandler(User.class), params);
          12         } catch (SQLException ex) {
          13             Logger.getLogger(UserServlet.class.getName()).log(Level.SEVERE, null, ex);
          14         }
          15         if (users.size()!=0) {
          16             User user = (User) users.get(0);
          17             HttpSession session = request.getSession();
          18             session.setAttribute("user", user);
          19             response.sendRedirect(request.getContextPath()+"/BlogServlet?method=list");
          20         } else {
          21             request.setAttribute("message""錯誤的用戶名或密碼");
          22             request.getRequestDispatcher("/admin/login.jsp").forward(request, response);
          23         }
          24     }

          logout相對很簡單,使session失效即可
          1 private void logout(HttpServletRequest request, HttpServletResponse response)
          2             throws ServletException, IOException {
          3         HttpSession session = request.getSession();
          4         session.invalidate();
          5         response.sendRedirect(request.getContextPath());
          6     }

          modifyPassword
           1  private void modify(HttpServletRequest request, HttpServletResponse response)
           2             throws ServletException, IOException {
           3         String oldPassword = request.getParameter("oldPassword");
           4         String newPassword = request.getParameter("newPassword");
           5         String confirmPassword = request.getParameter("confirmPassword");
           6 
           7         HttpSession session = request.getSession();
           8         User user = (User) session.getAttribute("user");
           9         if (!user.getPassword().equals(oldPassword)) {
          10             request.setAttribute("message""與原密碼不匹配");
          11         } else {
          12             if (!newPassword.equals(confirmPassword)) {
          13                 request.setAttribute("message""新密碼與確認(rèn)密碼不匹配");
          14             } else {
          15                 String sql = "update users set password =? where id = "+ user.getId();
          16                 QueryRunner qr = DbHelper.getQueryRunner();
          17                 try {
          18                     qr.update(sql, newPassword);
          19                 } catch (SQLException ex) {
          20                     Logger.getLogger(UserServlet.class.getName()).log(Level.SEVERE, null, ex);
          21                 }
          22                  request.setAttribute("message""密碼修改成功");
          23             }
          24         }
          25         request.getRequestDispatcher("/admin/modifyPassword.jsp").forward(request, response);
          26     }


          posted on 2009-09-30 14:22 Chucky 閱讀(207) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 莱州市| 连江县| 色达县| 舒兰市| 西华县| 阜宁县| 金堂县| 伊吾县| 长兴县| 天峨县| 基隆市| 乌拉特后旗| 泾源县| 拉孜县| 泽州县| 元朗区| 辛集市| 喀什市| 陆良县| 田东县| 颍上县| 墨玉县| 招远市| 廊坊市| 财经| 湖北省| 宁城县| 犍为县| 满城县| 榕江县| 长宁区| 平乐县| 宁城县| 广昌县| 合阳县| 榆中县| 灵台县| 察哈| 达拉特旗| 张掖市| 班玛县|