Resules的Annotation定義
我們只需要在Action Class的類的前面加上@Result即可以定義Action的跳轉(zhuǎn)
例如:
- @Results({
- @Result(name="input" value="/input.jsp" type=NullResult.class),
- @Reuslt(name="success" value="/success.jsp" type=NullResult.class),
- @Result(name="error" value="/error.jsp" type=NullResult.class)
- })
上面是一個典型的多Result配置,name屬性指定返回的字符串,value指定要跳轉(zhuǎn)的頁面,type指定Result的類型,type是一個很重要的屬性,他有一下幾種情況:
1)NullResult : 默認(rèn)的可以省略
2)ActionChainResult : 用于從一個Action跳轉(zhuǎn)到另外一個Action
例如:
- @Result
- (name = "search",value= "search",type=ActionChainResult.class,
- params={"method","search"})
這個配置是如果返回值為"search"就跳轉(zhuǎn)掉SearchAction的search方法,如果不指定params就跳轉(zhuǎn)到SearchAction的execute方法
3)StreamResult:用于文件下載
例如:
- @Result
- (name="success",value="inputStream",type=StreamResult.class,
- params={"bufferSize",FileConstant.DOWNLOAD_BUFFER_SIZE})
作為Struts2的Annotation配置中最重要的Result配置大致有這幾種情況,關(guān)于Struts2 Annotation的其他配置我也不是十分了解,就以后在介紹吧!!!