logincontroller.java
来自「Spring企业级开发下......电子书籍..............」· Java 代码 · 共 48 行
JAVA
48 行
package com.baobaotao.web;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractCommandController;
import com.baobaotao.domain.User;
import com.baobaotao.service.UserService;
public class LoginController extends AbstractCommandController {
private UserService userService;
public LoginController() {
setCommandClass(LoginCommand.class);
}
public void setUserService(UserService userService) {
this.userService = userService;
}
protected ModelAndView handle(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
if (request.getSession().getAttribute("user") != null) {
return new ModelAndView("target");
}
LoginCommand loginCommand = (LoginCommand) command;
boolean isValidUser = userService.hasMatchUser(loginCommand
.getUserName(), loginCommand.getPassword());
if (!isValidUser) {
return new ModelAndView("login", "error", "user name or password error.");
} else {
User user = userService.findUserByUserName(loginCommand
.getUserName());
user.setLastIp(request.getLocalAddr());
user.setLastVisit(new Date());
userService.loginSuccess(user);
request.getSession().setAttribute("user", user);
return new ModelAndView("main");
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?