除了使用配置文件配置以外,還可以使用註解來配置html
如下是一些常用的註解java
@Action指定一個類爲action,相應配置文件裏的<action>....</action>標籤,當中可以配置例如如下屬性jsp
@Action(value = "testAction",results = {@Result(name="success",location="/success.jsp")}) public class testAction extends ActionSupport { @Override public String execute() throws Exception { return SUCCESS; } }這就至關於例如如下的xml配置
<action name="testAction" class="struts2.action.testAction"> <result name="success">/success.jsp</result> </action>在xml配置中假設name不寫,那麼默認就是success,在註解中也是,假設results中的name不寫。那麼默認就是success
@Actions({ @Action(value = "testAction",results = {@Result(location="/success.jsp")}), @Action(value = "testAction2",results = {@Result(location="/success.jsp")}) }) public class testAction extends ActionSupport { @Override public String execute() throws Exception { return SUCCESS; } }這是使用/testAction或者/testAction2都可以跳轉到success.jsp上。因爲配置了兩個action映射
<action name="*" class="struts2.action.testAction" method={1}> <result name="{1}">/{1}.jsp</result> </action>這是xml配置中的通配符方式,即當咱們以add來訪問action時。將會進到action的add方法進行處理。當返回add時會跳轉到add.jsp頁面
public class testAction extends ActionSupport { @Action(value = "add",results = {@Result(name="add",location="/add.jsp")}) public String add() throws Exception { return "add"; } @Action(value = "delete",results = {@Result(name="delete",location="/delete.jsp")}) public String delete() throws Exception { return "delete"; } }這樣便實現了上面的效果。這說明@Action也是可以在方法上聲明的(@Actions也可以在方法上聲明)
@Result配置詳細返回結果。在results中使用,也可以單獨在類上使用,有例如如下屬性
ide
@Result(name="delete",location = "/delete.jsp") public class testAction extends ActionSupport { @Action(value = "add", results = { @Result(name = "add", location = "/add.jsp") }) public String add() throws Exception { return "add"; } @Action(value = "delete") public String delete() throws Exception { return "delete"; } }儘管delete方法沒有指定返回delete時要跳轉到哪一個頁面頁面。但是在類上用@Result聲明瞭,那麼就會找到類上面的這個@Result,而後跳轉到delete.jsp頁面