在原来的webwork式的xml配置文件里可以给<action>下的<result>节点添加一些额外的参数。
<result ..> <param name="">...</param></result>那换成@Result annotation之后要怎么做呢。
看@Result的源代码发现有个params的String数组
@Retention(RetentionPolicy.RUNTIME)public @interface Result { String name() default Action.SUCCESS; Class type() default NullResult.class; String value(); String[] params() default {};}
可是原来的param配置是个key和value的键值对啊。后来查到struts2的文档原来就这个String数组里约定的是key,value,这样的顺序。
•params - An Array of the parameters in the form {key1, value1, key2, value2}
@Result(name="error",type=FreemarkerResult.class, value="/error.ftl", params={"contentType", "application/xml"})
其实上面的大家都知道,问题是想传传参数该怎么办呢?
其中key 是可以随便写的,后面的直接使用action 中的带有set方法的变量就ok了
如:params={"key","fileId"})
fileId 为action中的一个带set 方法的变量
@Result(name="success",
type="redirectAction",
location="d-list",
params={"id", "%{id}"}
)
这样,当return SUCCESS时,就会跳转至d-list?id=XXXX
分享到:
相关推荐
import org.apache.struts2.convention.annotation.Result; import com.opensymphony.xwork2.ActionSupport; @Action(value = "download", params = {"inputPath", "/resources/images"}, results = {@Result...
import org.apache.struts2.convention.annotation.Result; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; // 控制器注解 @Controller // 设置父...
2. `@Result`注解的`name`属性指定结果名称,`type`指定视图资源类型(如JSP、FreeMarker等),`location`指定实际视图的位置,`params`属性用于传递参数给结果。 3. `@Result`的两种用法:一是直接在Action方法上...
Struts2注解是框架提供的一种简化XML配置的方式,它允许开发者在Action类或方法上直接添加注解,实现Action、结果(Result)和拦截器(Interceptor)的配置。这种方式提高了代码的可读性和可维护性,同时也减少了XML...
import org.apache.struts2.convention.annotation.Result; import org.apache.struts2.interceptor.validation.SkipValidation; import com.example.CustomType; import static ...
**Struts2 Annotation注解** Struts2框架同样支持注解,如: - `@Action`注解标识一个方法作为执行的动作,替代了传统的struts.xml配置。 - `@Results`和`@Result`用于定义动作的结果页面或跳转逻辑。 - `@Params`...
2. **注解处理**:当Struts2启动时,它会扫描应用中所有相关的Java类,寻找带有特定注解的类或方法,并根据这些注解的内容进行相应的处理。例如,将注解信息映射到框架内部的数据结构中,从而实现动态配置的目的。 3...
Struts2支持使用JavaBeans的getter和setter方法进行数据绑定,但也可以通过在字段上添加注解来简化这一过程。例如,可以使用`@Param`注解来指定参数名,Struts2会自动将请求参数值绑定到该字段。此外,`@Result`...
### Struts2内置拦截器简介 #### 一、概述 Struts2框架是Apache软件基金会下的一个开源项目,它提供了一种基于MVC(Model-View-Controller)设计模式的Web应用开发框架。Struts2的核心是拦截器(Interceptor)机制...
- Struts2的可扩展性体现在强大的插件机制,通过插件可以轻松添加新功能,如Struts2-convention-plugin提供了约定优于配置的规则。 6. **配置方式** - XML配置:传统的配置方式,通过struts.xml或类似的文件定义...
在Struts2中实现文件上传,首先需要在Action类中添加一个字段来接收上传的文件,并使用`@FileUpload annotation`进行标记。例如: ```java private File uploadFile; private String uploadFileContentType; ...
- **概念介绍**:列出Struts2自带的一些常用拦截器,如`params`拦截器、`servletConfig`拦截器等。 **7.4 开发自己的拦截器** - **实现方式**:指导如何自定义拦截器。 **7.5 深入拦截器编程** - **7.5.1 拦截...
2. Annotation配置:通过在Action类上使用注解,可以简化XML配置,提高开发效率。 三、Struts2 Action与结果 1. Action类:实现Action接口或继承ActionSupport基类,定义execute()方法处理请求。 2. Result类型:...