logininterceptor.java

来自「因为许多人出去吃饭都一个人付帐」· Java 代码 · 共 42 行

JAVA
42
字号
package cn.com.sdcncsi.lunch.filter;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts2.StrutsStatics;

import cn.com.sdcncsi.lunch.action.Login;
import cn.com.sdcncsi.lunch.domain.User;
import cn.com.sdcncsi.lunch.utils.Constants;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;

public class LoginInterceptor extends AbstractInterceptor {

	private static String LOGIN = "login";
	private static Log logger = LogFactory.getLog(LoginInterceptor.class.getName());
	
	@Override
	public String intercept(ActionInvocation invocation) throws Exception {
		ActionContext actionContext = invocation.getInvocationContext();
		HttpServletRequest request = (HttpServletRequest) actionContext
				.get(StrutsStatics.HTTP_REQUEST);
		logger.debug("in LoginInterceptor");
		Map session = actionContext.getSession();
		if (session != null && session.get(Constants.USER) != null) {
			logger.debug("user:"+((User)session.get(Constants.USER)).getUserName());
			return invocation.invoke();
		}
		else{
			return LOGIN;
		}
		
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?