package app.aop;
import java.util.Map;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
@SuppressWarnings("serial")
public class MyIntercepter implements Interceptor {
public void init() {
System.out.println("MyIntercepter 调用了init()方法");
}
public String intercept(ActionInvocation invocation) throws Exception {
System.out.println("MyIntercepter 调用了intercept()方法");
System.out.println("interceptor方法,每次拦截就执行一次");
System.out.println("invocation.getAction()===="+invocation.getAction());
System.out.println("invocation..getProxy().getAction()===="+invocation.getProxy().getAction());
System.out.println("invocation..getProxy().getActionName()===="+invocation.getProxy().getActionName());
System.out.println("invocation.getProxy().getMethod()===="+invocation.getProxy().getMethod());
System.out.println("invocation.getProxy().getNamespace()===="+invocation.getProxy().getNamespace());
System.out.println("invocation.getResult()===="+invocation.getResult());
System.out.println("invocation.getProxy().getMethod()===="+invocation.getProxy().getMethod());
//处理判断是否登录
Map<String,Object> session=ServletActionContext.getContext().getSession();
Object object= session.get("user");
if(object==null){
//未登录
return "input";
}else{
//已登录
String retutunValue=invocation.invoke();
System.out.println("retutunValue==="+retutunValue);
return invocation.invoke();
}
}
public void destroy() {
System.out.println("MyIntercepter 调用了destroy()方法");
}
}
import java.util.Map;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
@SuppressWarnings("serial")
public class MyIntercepter implements Interceptor {
public void init() {
System.out.println("MyIntercepter 调用了init()方法");
}
public String intercept(ActionInvocation invocation) throws Exception {
System.out.println("MyIntercepter 调用了intercept()方法");
System.out.println("interceptor方法,每次拦截就执行一次");
System.out.println("invocation.getAction()===="+invocation.getAction());
System.out.println("invocation..getProxy().getAction()===="+invocation.getProxy().getAction());
System.out.println("invocation..getProxy().getActionName()===="+invocation.getProxy().getActionName());
System.out.println("invocation.getProxy().getMethod()===="+invocation.getProxy().getMethod());
System.out.println("invocation.getProxy().getNamespace()===="+invocation.getProxy().getNamespace());
System.out.println("invocation.getResult()===="+invocation.getResult());
System.out.println("invocation.getProxy().getMethod()===="+invocation.getProxy().getMethod());
//处理判断是否登录
Map<String,Object> session=ServletActionContext.getContext().getSession();
Object object= session.get("user");
if(object==null){
//未登录
return "input";
}else{
//已登录
String retutunValue=invocation.invoke();
System.out.println("retutunValue==="+retutunValue);
return invocation.invoke();
}
}
public void destroy() {
System.out.println("MyIntercepter 调用了destroy()方法");
}
}