package com.springmvc.controller;
import com.springmvc.entity.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import javax.servlet.http.HttpSession;
/**
* @author YuusukeUchiha
* @date 2020/7/19 21:41
* @ide IntelliJ IDEA
*/
@Controller
public class UserController {
/**
* 向用户登录页面跳转方法
*
* @return
*/
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String loginPage() {
System.out.println("用户从login请求到登录跳转login.jsp页面");
// 跳转到登录页面
return "login";
}
// 用户实现登录方法
@RequestMapping(value = "/login", method = RequestMethod.POST)
public String login(User user, Model model, HttpSession httpSession) {
String loginName = user.getLoginName();
String password = user.getPassword();
if (loginName != null && loginName.equals("admin") && password != null && password.equals("123456")) {
System.out.println("用户登录成功");
// 将用户添加到session中保存
httpSession.setAttribute("CURRENT_USER", user);
// 重定向到主页面的跳转方法
return "redirect:success";
}
model.addAttribute("message", "账号或者密码错误,请重新登录");
// 跳转到登录页面
return "login";
}
/**
* 向主页跳转方法
*
* @return
*/
@RequestMapping(value = "/success")
public String indexPage() {
System.out.println("用户从index请求到主页跳转success.jsp页面");
// 跳转到主页面
return "success";
}
@RequestMapping(value = "/logout")
public String logout(HttpSession httpSession) {
// 清除session
httpSession.invalidate();
System.out.println("退出功能实现,清除session,重定向到login请求~");
// 重定向到登录页面的跳转方法
return "redirect:login";
}
}
重温Spring框架(五、SpringMVC之十九:拦截器之四:使用拦截器实现用户登录权限验证)
最新推荐文章于 2020-08-06 21:42:28 发布