登入提交資訊的處理頁面action層
阿新 • • 發佈:2018-12-19
登陸頁面的資訊提交到servlet進行處理。
package com.wh.action; import java.io.IOException; import java.net.URLEncoder; import javax.servlet.ServletException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.wh.entity.User; import com.wh.servie.LoginService; import com.wh.servie.LoginServiceImpl; @SuppressWarnings("serial") public class LoginServlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String function=request.getParameter("function"); if("login".equals(function)) { this.login(request,response); }else if("reLogin".equals(function)) { this.reLogin(request,response); } } private void reLogin(HttpServletRequest request, HttpServletResponse response) throws IOException { // TODO Auto-generated method stub response.sendRedirect("/loginProject/login.jsp"); } private void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String username=request.getParameter("username"); String password=request.getParameter("password"); //寫一個儲存資訊的coolie String remember=request.getParameter("remember"); if(remember!=null) { Cookie usernameCookie= new Cookie("username", URLEncoder.encode(username, "utf-8")); Cookie passwordCookie= new Cookie("password", URLEncoder.encode(password, "utf-8")); usernameCookie.setMaxAge(24*60*60); passwordCookie.setMaxAge(24*60*60); response.addCookie(usernameCookie); response.addCookie(passwordCookie); }else { Cookie[]cookies=request.getCookies(); for(Cookie cook:cookies) { if(cook.getName().equals(username)||cook.getName().equals(password)) { cook.setMaxAge(0); } response.addCookie(cook); } } User user=new User(username,password); LoginService loginService=new LoginServiceImpl(); Boolean bool=loginService.login(user); /*request.setAttribute("bool", bool); request.getRequestDispatcher("/loginStatu.jsp").forward(request, response);*/ if(bool==true) { request.getRequestDispatcher("/loginSuccess.jsp").forward(request, response); HttpSession session=request.getSession(); session.setAttribute("user", user); } else { HttpSession session=request.getSession(); session.setAttribute("errorMessage", "登陸失敗,請重新登陸"); response.sendRedirect("/loginProject/login.jsp"); } } }