package springmvc.controller;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import springmvc.model.UserInfoBean;
public class LoginController implements Controller {
private String successPage;
private String failurePage;
public String getSuccessPage() {
return successPage;
}
public void setSuccessPage(String successPage) {
this.successPage = successPage;
}
public String getFailurePage() {
return failurePage;
}
public void setFailurePage(String failurePage) {
this.failurePage = failurePage;
}
@Override
public ModelAndView handleRequest(HttpServletRequest req,
HttpServletResponse resp) throws Exception {
return dispose(req, resp);
}
public ModelAndView dispose(HttpServletRequest req,
HttpServletResponse resp) throws Exception {
Map<String, String> map = new HashMap<String, String>();
String username = req.getParameter("username");
String password = req.getParameter("password");
String message = null;
// 判断是否为空
if (username == null || password == null || username.equals("")
|| password.equals("")) {
message = "username or password can't be null";
map.put("msg", message);
return new ModelAndView(getFailurePage(), map);
}
// 判断用户名是否存在
if (!UserInfoBean.exisitUser(username)) {
message = "username doesn't exisit";
map.put("msg", message);
return new ModelAndView(getFailurePage(), map);
}
// 如果存在,判断密码是否正确,正确跳转,错误跳转
if (!UserInfoBean.confirmPassword(username, password)) {
message = "password is wrong";
map.put("msg", message);
map.put("password", password);
return new ModelAndView(getFailurePage(), map);
} else {
map.put("username", username);
return new ModelAndView(getSuccessPage(), map);
}
}
}