1、interceptor-stack是一堆拦截器组成的一个拦截器栈。也可以当拦截器使用。
interceptor-ref是指定某个action使用哪一个拦截器,可以是一个interceptor,也可以是一个interceptor-stack。
请注意下面的区别:普通自定义栈:
<interceptors>
<interceptor name="auth" class="com.action.AuthorizationInterceptor"></interceptor>
<interceptor-stack name="myStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="auth"/>
</interceptor-stack> </interceptors>
上传自定义栈:
<interceptors><!-- 定义一个拦截器 --> <interceptor-stack name="uploadStack"> <interceptor-ref name="fileUpload"> <!-- allowedTypes是“文件类型”, 而不是“文件后缀名”,加上image/pjpeg是因为ie解析 --> <param name="allowedTypes"> image/png,image/gif,image/jpeg,image/pjpeg </param> <!-- 允许后缀名为png,bmp,jpg,doc,xls的文件上传 --> <param name="allowedExtensions"> png,bmp,jpg,doc,xls </param> <param name="maximumSize">500000</param> </interceptor-ref> <interceptor-ref name="defaultStack"></interceptor-ref> </interceptor-stack> </interceptors>