求JAVA拦截器代码和配置文件!就是每次请求action之前都会执行配置的java类
2个回答
展开全部
strut2的拦截器的一个例子。。。
拦截器定义,,这里是一个判断超时的拦截器功能
<interceptors>
<interceptor name="Timeout" class="com.myproject.util.TimeOutInterceptor"/>
</interceptors>
action定义。。。。。。。。。。。
<action name="cf*" method="{1}" class="com.myproject.action.user.ConfigAction">
<!-- 引用自定义的拦截器 -->
<interceptor-ref name="Timeout">
<param name="excludeMethods">
Switch,UpdCss <!-- action中的这两个方法生效 -->
</param>
</interceptor-ref>
<interceptor-ref name="basicStack"/> <!-- struts 内置的默认拦截器 -->
<result name="config">/user/config.jsp</result>
</result>
//拦截器的实现。。。。。。。
package com.myproject.util;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor;
import java.util.Map;
/**
* 通用拦截器,判断用户超时
* @author maodrc
*/
public class TimeOutInterceptor extends MethodFilterInterceptor {
@Override
protected String doIntercept(ActionInvocation ai) throws Exception {
Map sessionMap = ai.getInvocationContext().getSession();
String username = (String) sessionMap.get("username");
if (com.maxneting.util.Util.isNull(username)) {
return "timeout";
} else {
return ai.invoke();
}
}
}
拦截器定义,,这里是一个判断超时的拦截器功能
<interceptors>
<interceptor name="Timeout" class="com.myproject.util.TimeOutInterceptor"/>
</interceptors>
action定义。。。。。。。。。。。
<action name="cf*" method="{1}" class="com.myproject.action.user.ConfigAction">
<!-- 引用自定义的拦截器 -->
<interceptor-ref name="Timeout">
<param name="excludeMethods">
Switch,UpdCss <!-- action中的这两个方法生效 -->
</param>
</interceptor-ref>
<interceptor-ref name="basicStack"/> <!-- struts 内置的默认拦截器 -->
<result name="config">/user/config.jsp</result>
</result>
//拦截器的实现。。。。。。。
package com.myproject.util;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor;
import java.util.Map;
/**
* 通用拦截器,判断用户超时
* @author maodrc
*/
public class TimeOutInterceptor extends MethodFilterInterceptor {
@Override
protected String doIntercept(ActionInvocation ai) throws Exception {
Map sessionMap = ai.getInvocationContext().getSession();
String username = (String) sessionMap.get("username");
if (com.maxneting.util.Util.isNull(username)) {
return "timeout";
} else {
return ai.invoke();
}
}
}
Storm代理
2023-08-29 广告
2023-08-29 广告
StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询