浏览 8246 次
|
该帖已经被评为精华帖
|
|
|---|---|
| 作者 | 正文 |
|
时间:2004-08-27
(本人翻译)
Strust拦截器 1.概述 Strust拦截器改进了Strust对Action的操作能力,增加了拦截器特性和IoC特性. 通过分析另外的WEB框架,比如:WebWork 2/XWork,Strust拦截器的目的是把其它WEB框架最好的特性整合到STRUTS中.Strust拦截器支持struts1.1, 按照BSD许可发行. 2.特点 Action 拦截 WW2 操作风格 支持 regular 和 Tiles 包括使用Strust拦截器修改过的Strust例子 3.使用方法: 把Strust拦截器配置为一个struts插件,就可以在需要的任何地方调用. 4.配置struts插件: 把Strust拦截器配置为一个struts插件,只需要修改 Struts 配置文件就可以了,修改后的配置文件.一般看起来像这种样子: <plug-in className="net.sf.struts.saif.SAIFPlugin"> <set-property property="interceptor-config" value="/WEB-INF/interceptor-config.xml" /> </plug-in> 5.拦截器的配置 在interceptor-config.xml文件中定义了所有拦截(当然可以是另外的任何文件名). 这个文件包含拦截定义和它们应该如何被使用. 从两个方面来定义 Struts Actions拦截: globally and by Action. When the Action is requested, first any global interceptors will be applied, then Action-specific interceptors. The following interceptors are included in SAIF: Included interceptors Class Description net.sf.struts.saif.ComponentInterceptor Performs inversion of control functionality. Sets any components the Action has defined it needs. This is an example of an interceptor configuration file: <interceptor-config> <interceptor name="componentInterceptor" type="net.sf.struts.saif.ComponentInterceptor"/> <interceptor name="testInterceptor" type="net.sf.struts.saif.TestInterceptor"/> <default-interceptors> <interceptor name="componentInterceptor"/> </default-interceptors> <action type="org.apache.struts.webapp.example.EditRegistrationAction"> <interceptor name="testInterceptor"/> </action> </interceptor-config> Interceptor Implementation Interceptors can perform actions before and after a Struts Action is called. To write an interceptor, simple implement the net.sf.struts.saif.ActionInterceptor interface and implement the beforeAction() and afterAction() methods. This is an example of an interceptor implementation: public class TestInterceptor implements ActionInterceptor { public void beforeAction(Action action, ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { log.debug("beforeAction called"); } public void afterAction(Action action, ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { log.debug("afterAction called"); } private Log log = LogFactory.getLog(TestInterceptor.class); } Contact Please contact Lars Hoss or Don Brown with comments, bug reports, and suggestions. 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2007-03-02
正在学习saif,但似乎用的人很少,谢谢dhj1的文章
|
|
| 返回顶楼 | |
|
时间:2007-03-04
不管怎么要先支持!
|
|
| 返回顶楼 | |
|
时间:2007-03-08
强烈支持翻译
|
|
| 返回顶楼 | |




