SpringMVC存取Session的两种方法

 更新时间:2017年01月05日 15:26:01   作者:南蛮虫  
Spring MVC是个非常优秀的框架,本篇文章主要介绍了SpringMVC存取Session的两种方法,具有一定的参考价值,有兴趣的可以了解一下。

WEB 应用通常会引入 Session,用来在服务端和客户端之间保存一系列动作/消息的状态,比如网上购物维护 user 登录信息直到 user 退出。SpringMVC存取Session的两种方法,具体如下:

方法一:使用servlet-api

@Controller 
public class ManagerController { 
 
  @Resource 
  private ManagerService managerServiceImpl; 
   
  @RequestMapping(value = "manager/login.do",method = RequestMethod.GET)  
  public ModelAndView login(ManagerModel managerModel,HttpSession httpSession){ 
     
    ManagerModel manager = managerServiceImpl.getManager(managerModel); 
    if(manager!=null){ 
      manager.setPassword(""); 
      httpSession.setAttribute("manager", manager); 
      return new ModelAndView(new RedirectView("../admin/main.jsp")); 
    }else{ 
      return new ModelAndView(new RedirectView("../admin/login.jsp")); 
    } 
  } 
   
  @RequestMapping(value = "manager/logout.do",method = RequestMethod.GET) 
  public String logout(HttpSession httpSession){ 
    httpSession.getAttribute("manager"); 
    return "success"; 
  } 
} 

方法二:使用SessionAttributes

@Controller 
@SessionAttributes("manager") 
public class ManagerController { 
 
  @Resource 
  private ManagerService managerServiceImpl; 
   
  @RequestMapping(value = "manager/login.do",method = RequestMethod.GET)  
  public ModelAndView login(ManagerModel managerModel,ModelMap model){ 
     
    ManagerModel manager = managerServiceImpl.getManager(managerModel); 
    if(manager!=null){ 
      manager.setPassword(""); 
      model.addAttribute("manager", manager); 
      return new ModelAndView(new RedirectView("../admin/main.jsp")); 
    }else{ 
      return new ModelAndView(new RedirectView("../admin/login.jsp")); 
    } 
  } 
   
  @RequestMapping(value = "manager/logout.do",method = RequestMethod.GET) 
  public String logout(@ModelAttribute("manager")ManagerModel managerModel){ 
    return "success"; 
  } 
} 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot整合阿里云短信服务的方法

    SpringBoot整合阿里云短信服务的方法

    在实际项目中经常有发送短信的功能,今天进说一下SpringBoot整合阿里云短信服务的相关知识,新建短信微服务,编写发送短信接口的方法文中给大家介绍的很详细,需要的朋友参考下吧
    2021-10-10
  • springboot如何配置允许跨域访问

    springboot如何配置允许跨域访问

    这篇文章主要介绍了springboot如何配置允许跨域访问,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Java8语法糖之Lambda表达式的深入讲解

    Java8语法糖之Lambda表达式的深入讲解

    这篇文章主要给大家介绍了关于Java8语法糖之Lambda表达式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Java中的CompletableFuture使用解析

    Java中的CompletableFuture使用解析

    这篇文章主要介绍了Java中的CompletableFuture使用解析,为什么CompletableFuture要定制化线程池,因为默认的线程池是ForkJoinPool,这个线程池的最大线程数默认是你的电脑的线程数数减1,假如我线程电脑是4核8线程的,ForkJoinPool的最大线程数就是7,需要的朋友可以参考下
    2024-01-01
  • 一个简陋的java图书管理系统

    一个简陋的java图书管理系统

    这篇文章主要为大家详细介绍了一个简陋的java图书管理系统,简单的实现功能测试,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • spring boot整合mybatis利用Mysql实现主键UUID的方法

    spring boot整合mybatis利用Mysql实现主键UUID的方法

    这篇文章主要给大家介绍了关于spring boot整合mybatis利用Mysql实现主键UUID的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-03-03
  • Java移除无效括号的方法实现

    Java移除无效括号的方法实现

    本文主要介绍了Java移除无效括号的方法实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • java序列化和java反序列化示例

    java序列化和java反序列化示例

    在web项目开发的时候,经常用到序列化和反序列化用来传递大流量的数据,类只有实现Serializable借口才能被序列化,下来是java序列化和反序列化演示
    2014-01-01
  • java springboot邮箱找回密码功能的实现讲解

    java springboot邮箱找回密码功能的实现讲解

    这篇文章主要介绍了java springboot邮箱找回密码功能的实现讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java如何自定义线程池中队列

    Java如何自定义线程池中队列

    这篇文章主要介绍了Java如何自定义线程池中队列,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07

最新评论