Struts 2准备拦截器用法示例

  1. 准备拦截器
  2. 准备拦截器参数
  3. 准备拦截器的示例
如果准备拦截器实现了Preparable接口, 则在操作上调用prepre()方法。它在execute()方法之前调用prepare()方法。
要使用prepare拦截器, 你需要在操作类中实现Preparable接口, 并覆盖其方法prepare。
默认情况下, 它位于默认栈中。因此, 你无需明确指定它。
准备拦截器参数 仅为预拦截器定义了1个参数。
Parameter Description
alwaysInvokePrepare 默认情况下将其设置为true。
准备拦截器的示例
< action name="login" class="com.srcmini.LoginAction"> < interceptor-ref name="params"/> < interceptor-ref name="prepare"/> < result name="success"> login-success.jsp< /result> < /action>

动作课 动作类必须实现Preparable接口并重写其方法prepare()。
package com.srcmini; import com.opensymphony.xwork2.Preparable; public class LoginAction implements Preparable{ private String name, password; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public void prepare() throws Exception { System.out.println("preparation logic"); }public String execute(){ System.out.println("actual logic"); return "success"; } }

你可以在控制台上看到输出, 准备逻辑在实际逻辑之前打印。
下载完整示例(在不带jar的Eclipse ide中开发)
下载完整示例(在Myeclipse ide中开发)
输出
Struts 2准备拦截器用法示例

文章图片
【Struts 2准备拦截器用法示例】现在, 从struts.xml文件中删除准备拦截器的条目, 准备逻辑将不会打印。

    推荐阅读