Package oss.ngocminh.lego.service

Source Code of oss.ngocminh.lego.service.UserLoginController

package oss.ngocminh.lego.service;

import java.io.IOException;
import java.sql.Connection;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang.StringUtils;

import oss.ngocminh.lego.data.Entity;
import oss.ngocminh.lego.persistence.UserDAO;
import oss.ngocminh.lego.util.SessionUtils;

/**
* Servlet implementation class UserLoginController
*/
public class UserLoginController extends AbstractController {
  private static final long serialVersionUID = 1L;

  /**
   * Default constructor.
   */
  public UserLoginController() {
  }

  @Override
  protected void doGet(HttpServletRequest request,
      HttpServletResponse response) throws ServletException, IOException {
    renderView(request, response);
  }
 
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
   *      response)
   */
  protected void doPost(HttpServletRequest request,
      HttpServletResponse response) throws ServletException, IOException {
    Errors errors = new Errors();
    String email = request.getParameter("email");
    String password = request.getParameter("password");
    Entity user = getUser(email);
    if (user == null) {
      errors.put("email", "Không tìm thấy người dùng");
    } else {
      if (StringUtils.isEmpty(password)) {
        errors.put("password", "Hãy nhập mật khẩu");
      }
      if (!password.equals(user.get("password"))) {
        errors.put("password", "Mật khẩu không đúng");
      }
    }
   
    if (errors.isEmpty()) {
      SessionUtils.login(request, user);
      String returnUrl = StringUtils.defaultIfEmpty(
          request.getParameter("returnUrl"), "home");
      redirect(returnUrl, response);
    } else {
      request.setAttribute("errors", errors);
      renderView(request, response);
    }
  }

  private Entity getUser(String email) throws ServletException {
    try {
      Connection conn = getConnection();
      UserDAO userDAO = new UserDAO(conn);
      Entity user = userDAO.findByEmail(email);
      conn.close();
      return user;
    } catch (SQLException e) {
      throw new ServletException(e);
    }
  }

}
TOP

Related Classes of oss.ngocminh.lego.service.UserLoginController

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.