struts2中使用注解配置Action方法詳解
使用注解來配置Action可以實現(xiàn)零配置,零配置將從基于純XML的配置轉化為基于注解的配置。使用注解,可以在大多數(shù)情況下避免使用struts.xml文件來進行配置。
struts2框架提供了四個與Action相關的注解類型,分別為ParentPackage、Namespace、Result和Action。
ParentPackage:ParentPackage注解用于指定Action所在的包要繼承的父包。該注解只有一個value參數(shù)。用于指定要繼承的父包。
示例:
使用ParentPackage注解,其value值為mypackage,表示所在的Action需要繼承mypackage包,
@ParentPackage(value="mypackage")
public class UserAction extends ActionSupport{
}
如果注解中只有一個value參數(shù)值,或者其他參數(shù)值都使用默認值時,則可以對value參數(shù)設置進行簡寫,比如上述的代碼:
@ParentPackage("mypackage")
public class UserAction extends ActionSupport{
}
把struts2-convention-pligin-2.x.x.jar包導入到web應用中,才能在Action類中使用注解。
Namespace:Namespace注解用于指定Action所在的包的命名空間。該注解只有一個value參數(shù),用于指定ACtion所屬于的命名空間。
當使用Namespace注解時,在為命名空間取名需要使用斜杠(/)開頭。
使用Namespace注解,指定其Action所在的包的命名空間為/user:
@Namespace("/user")
public class UserAction extends ActionSupport{
}
Result:Result注解用于定義一個Result映射,該注解包含四個參數(shù),
1)name:可選參數(shù),用于指定Result的邏輯名,默認值為success
2)location:必選參數(shù),用于指定Result對應資源的URL
3)type:可選參數(shù),用于指定Result的類型,默認值為NullResult.class
4)params:可選參數(shù),用于為Result指定要傳遞的參數(shù),格式為:{key1,value1,key2,value2,...}
如果type參數(shù)的值為NullResult.class,那么struts2框架在解析Result配置時,會使用默認的結果類型(即ServletDispatcherResult)來替換NullResult。
@Result(name="login",location="/login.jsp",params={},type="dispatcher")
public class UserAction extends ActionSupport{
}
Action:Action注解對應于struts.xml文件中的action元素。該注解可用于Action類上,也可用于方法上。這個注解包含一下的幾個屬性:
1)value:可選參數(shù),表示Action的名字
2)results:可選參數(shù),表示Action的多個Result映射。該屬性用于定義一組Result映射
3)interceptorRefs:可選參數(shù),表示Action的多個攔截器。該屬性用于定義一組攔截器
4)params:可選參數(shù),表示傳遞給Action的參數(shù),格式為{key1,value1,key2,value2,...}
5)exceptionMappings:可選參數(shù),指定Action的異常處理類,他是一個Exception-Mapping的數(shù)組屬性
@Action{
value="user",
interceptorRefs = {
@InterceptorRefs(value="fileUpload",params={"maximumSize","1024000","allowedTypes",image/123}),
@InterceptorRefs(value = "basicStack")
},
results = {
@Result(name="success",location="success.jsp"),
@Result(name="login",location="login.jsp")
},
exceptionMappings = {
@ExceptionMapping(exception="java.lang.Exception",result="error")
}
}
public class UserAction extends ActionSupport{
}
總結
以上就是本文關于struts2中使用注解配置Action方法詳解的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:struts2中類型轉換實例代碼、Struts2 通過ognl表達式實現(xiàn)投影、Struts2修改上傳文件大小限制方法解析等,有什么問題可以隨時留言,小編會及時回復大家的。感謝朋友們對本站的支持。下面介紹幾款不錯的小游戲,大家在工作學習之余可以放松下心情,勞逸結合才是最好的。
遠古邊境 英文免安裝版
http://www.dbjr.com.cn/game/578720.html
火柴人戰(zhàn)斗 英文免安裝版
http://www.dbjr.com.cn/game/578719.html
希望大家能夠喜歡。
相關文章
SpringMVC結合模板模式實現(xiàn)MyBatisPlus傳遞嵌套JSON數(shù)據(jù)
我們經(jīng)常會遇到需要傳遞對象的場景,有時候,我們需要將一個對象的數(shù)據(jù)傳遞給另一個對象進行處理,但是又不希望直接暴露對象的內部結構和實現(xiàn)細節(jié),所以本文給大家介紹了SpringMVC結合模板模式實現(xiàn)MyBatisPlus傳遞嵌套JSON數(shù)據(jù),需要的朋友可以參考下2024-03-03
spring?boot使用攔截器修改請求URL域名?換?IP?訪問的方法
Spring Interceptor是一個非常類似于Servlet Filter 的概念 ,這篇文章主要介紹了spring?boot使用攔截器修改請求URL域名?換?IP?訪問的相關知識,需要的朋友可以參考下2022-09-09
Spring Boot 中常用的注解@RequestParam及基本用法
@RequestParam 是 Spring Framework 和 Spring Boot 中常用的注解之一,用于從請求中獲取參數(shù)值,本文給大家介紹Spring Boot 中常用的注解@RequestParam,感興趣的朋友一起看看吧2023-10-10
利用Springboot+Caffeine實現(xiàn)本地緩存實例代碼
Caffeine是一個基于Java8開發(fā)的提供了近乎最佳命中率的高性能的緩存庫,下面這篇文章主要給大家介紹了關于利用Springboot+Caffeine實現(xiàn)本地緩存的相關資料,需要的朋友可以參考下2023-01-01
Centos 7 安裝 OpenJDK 11 兩種方式及問題小結
這篇文章主要介紹了Centos 7 安裝 OpenJDK 11 兩種方式,第一種方式使用yum安裝,第二種方式使用tar解壓安裝,每種方法給大家介紹的非常詳細,需要的朋友可以參考下2021-09-09
詳解Spring Data JPA中Repository的接口查詢方法
repository代理有兩種方式從方法名中派生出特定存儲查詢:通過直接從方法名派生查詢和通過使用一個手動定義的查詢。本文將通過示例詳細講解Spring Data JPA中Repository的接口查詢方法,需要的可以參考一下2022-04-04

