1. 程式人生 > >SpringMVC存取Session的兩種方法

SpringMVC存取Session的兩種方法

方法一:使用servlet-api

  1. @Controller
  2. publicclass ManagerController {  
  3.     @Resource
  4.     private ManagerService managerServiceImpl;  
  5.     @RequestMapping(value = "manager/login.do",method = RequestMethod.GET)    
  6.     public ModelAndView login(ManagerModel managerModel,HttpSession httpSession){  
  7.         ManagerModel manager = managerServiceImpl.getManager(managerModel);  
  8.         if(manager!=null){  
  9.             manager.setPassword("");  
  10.             httpSession.setAttribute("manager", manager);  
  11.             returnnew ModelAndView(new RedirectView("../admin/main.jsp"));  
  12.         }else{  
  13.             returnnew ModelAndView(new RedirectView("../admin/login.jsp"));  
  14.         }  
  15.     }  
  16.     @RequestMapping(value = "manager/logout.do",method = RequestMethod.GET)  
  17.     public String logout(HttpSession httpSession){  
  18.         httpSession.getAttribute("manager");  
  19.         return"success";  
  20.     }  
  21. }  
方法二:使用SessionAttributes
  1. @Controller
  2. @SessionAttributes("manager")  
  3. publicclass ManagerController {  
  4.     @Resource
  5.     private ManagerService managerServiceImpl;  
  6.     @RequestMapping(value = "manager/login.do",method = RequestMethod.GET)    
  7.     public ModelAndView login(ManagerModel managerModel,ModelMap model){  
  8.         ManagerModel manager = managerServiceImpl.getManager(managerModel);  
  9.         if(manager!=null){  
  10.             manager.setPassword("");  
  11.             model.addAttribute("manager", manager);  
  12.             returnnew ModelAndView(new RedirectView("../admin/main.jsp"));  
  13.         }else{  
  14.             returnnew ModelAndView(new RedirectView("../admin/login.jsp"));  
  15.         }  
  16.     }  
  17.     @RequestMapping(value = "manager/logout.do",method = RequestMethod.GET)  
  18.     public String logout(@ModelAttribute("manager")ManagerModel managerModel){  
  19.         return"success";  
  20.     }  
  21. }