一、配置和使用拦截器
要想使用struts-default.xml中的拦截器,只要在struts.xml配置文件中加入
<include file="struts-default.xml"/>
并继承其中的 struts-default包(package)
最后在定义action时,使用
<interceptor-ref name="xx"/>
引用拦截器或者拦截器栈。
例子
新建一个Action类
public class TimterInterceptorAction extends ActionSupport { @Override public String execute() throws Exception { try { Thread.sleep(500); } catch (Exception e) { e.printStackTrace(); } return SUCCESS; } }
配置文件如下
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <include file="struts-default.xml"></include> <package name ="com.chuiyuan.action" extends="struts-default"> <!-- action hello --> <action name="timer" class="com.chuiyuan.action.TimterInterceptorAction"> <interceptor-ref name="timer"/> <result>/timer.jsp</result> </action> </package> </struts>
timer.jsp文件可以随便写。
当我们第一次加载的时候,会发现时间远比第二次长,这是因为第一次加载的时候要做一些初始化的工作。
这里也说明了timer的一个作用,可以粗略的估计性能。
二、自定义拦截器
拦截器都是无状态的,这样不会有并发问题。
时间: 2024-10-12 09:50:25