登入时session的处理方式
Posted 再也伤不起
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了登入时session的处理方式相关的知识,希望对你有一定的参考价值。
暂时理解不够彻底 有空在详细介绍,先记录代码
1:创建一个工具类 存取当前登录用户
1 package com.liveyc.eloan.util; 2 3 import javax.servlet.http.HttpSession; 4 5 import org.springframework.web.context.request.RequestContextHolder; 6 import org.springframework.web.context.request.ServletRequestAttributes; 7 8 import com.liveyc.eloan.base.domain.Logininfo; 9 10 11 /** 12 * 存取当前登录用户的工具类 13 * 14 * @author Administrator 15 * 16 */ 17 public class UserContext { 18 19 public static final String CURRENT_LOGININFO_IN_SESSION = "logininfo"; 20 21 private static HttpSession getSession() { 22 return ((ServletRequestAttributes) RequestContextHolder 23 .getRequestAttributes()).getRequest().getSession(); 24 } 25 26 public static void putCurrent(Logininfo current) { 27 getSession().setAttribute(CURRENT_LOGININFO_IN_SESSION, current); 28 } 29 30 public static Logininfo getCurrent() { 31 return (Logininfo) getSession().getAttribute( 32 CURRENT_LOGININFO_IN_SESSION); 33 } 34 35 }
2:在Controller所在的项目的web.xml中配置监听器
1 <listener> 2 <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> 3 </listener>
看源码可发现 包装过程
所以在util工具类中 session的获取方式
以上是关于登入时session的处理方式的主要内容,如果未能解决你的问题,请参考以下文章
我在一个后台登陆时,把用户名存入session中了,如果修改密码session丢失,怎么办