Struts2 自动登录的拦截器
来源:互联网 发布:君君的淘宝店 编辑:程序博客网 时间:2024/06/05 00:26
package org.wiyi.bbs.Interceptor;import java.util.Map;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import org.wiyi.bbs.model.User;import org.wiyi.bbs.service.UserService;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionInvocation;import com.opensymphony.xwork2.interceptor.Interceptor;public class AutoLoginInterceptor implements Interceptor{private static final long serialVersionUID = -3622290057856883830L;@Overridepublic void destroy() {}@Overridepublic void init() {System.out.println("拦截到http请求") ;}@Overridepublic String intercept(ActionInvocation invocation) throws Exception {HttpServletRequest request = ServletActionContext.getRequest() ;Cookie[] cookies = request.getCookies() ;ActionContext atx = invocation.getInvocationContext() ;Map<String,Object> session = atx.getSession() ;if(session.get("user") == null) {System.out.println("----开始自动登录----") ;if(cookies != null) {for(Cookie cookie : cookies) {if(cookie.getName().equals("autoLogin")) {String[] value = cookie.getValue().split("_") ;int userId = Integer.parseInt(value[0]) ;long expireTime = Long.parseLong(value[1]) ;UserService userService = getUserService() ;User user = userService.loadUser(userId) ;System.out.println(user) ;if(user.getAutoLoginKey().equals(cookie.getValue()) && expireTime > System.currentTimeMillis()) {session.put("user", user) ;}System.out.println("-----自动登录成功-----") ;break ;}}}}return invocation.invoke();}private UserService getUserService() {ApplicationContext atx = new ClassPathXmlApplicationContext("applicationContext.xml") ;UserService userService = (UserService) atx.getBean("userServiceImpl") ;return userService;}}
0 0
- Struts2 自动登录的拦截器
- STRUTS2 登录拦截器
- Struts2登录拦截器的简单示例
- Struts2拦截器的应用:登录验证
- 配置Struts2的登录拦截器
- Struts2登录拦截器的使用
- struts2拦截器--拦截未登录用户
- Struts2自定义拦截器:登录拦截
- struts2 拦截器 登录验证
- 浅谈Struts2登录拦截器
- Struts2拦截器登录验证
- Struts2拦截器登录验证
- Struts2拦截器登录验证
- struts2 拦截器的研究 这里以登录为例
- 基于SSH2框架Struts2拦截器的登录验证实现
- 基于SSH2框架Struts2拦截器的登录验证实现
- 用Struts2的拦截器验证用户是否登录
- 基于SSH2框架Struts2拦截器的登录验证实现
- Foundation框架
- 铁路的售票系统来说明分库分表对架构的影响
- Java编码规范
- STM32F103VCT6+W5500 Telnet服务实现,可远程登陆并实现控制
- 2014ACM集训13级PK赛4-K-Nice
- Struts2 自动登录的拦截器
- 和matlab链接是显示Can't load IA 64-bit .dll on a AMD 64-bit
- Two Sum-----LeetCode
- Visual Studio 2012旗舰版序列号:
- 1024. Palindromic Number
- Cocos2d-x 3.0 开发(十七)使用Cocos2d-x 3.0rc,一条命令打包Android
- win8.1 64位系统下正确安装串口转usb驱动
- Rotate Image
- 日期与时间处理