拦截器强制session过期

来源:互联网 发布:细说php第二版答案 编辑:程序博客网 时间:2024/05/16 18:31
package com.paxsz.tms.admin.web.interceptor;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.security.core.context.SecurityContextHolder;import org.springframework.web.method.HandlerMethod;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import com.paxsz.common.exception.BusinessException;import com.paxsz.server.AppException;import com.paxsz.tms.admin.model.PubUser;import com.paxsz.tms.admin.service.UserService;import com.paxsz.tms.admin.web.util.AdminUtil;public class CheckCurrentUserInterceptor implements HandlerInterceptor {@Autowired@Qualifier("tmsUserService")private UserService userService;static Log log = LogFactory.getLog(CheckCurrentUserInterceptor.class);@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {if (handler instanceof HandlerMethod) {PubUser currentUser = AdminUtil.getLoginUser();if(currentUser != null){PubUser user = userService.get(currentUser.getId());if(user == null){SecurityContextHolder.getContext().setAuthentication(null);throw new AppException("currentuser.notFound");}if(!String.valueOf(currentUser.getOrganization().getId()).equals(String.valueOf(user.getOrganization().getId()))){SecurityContextHolder.getContext().setAuthentication(null);throw new AppException("currentgroup.changed");}currentUser.setEmail(user.getEmail());currentUser.setFullname(user.getFullname());currentUser.setPhone(user.getPhone());}}return true;}@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {}@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {}}

0 0
原创粉丝点击