首先,set-property标记在action的内部局部使用,归属于所定义的action。set-property标记对于“向action传递信息非常有用”。例如,如果一个单独的Action可以处理若干个不同的表单,可以使用set-property标记告诉Action要处理的是哪一个表单。这种情况下,此Action的name属性定义的Form封装所有需要处理的表单字段,action根据set-property标记传入的信息来决定需要处理的表单,然后从form中取得需要的表单字段。
下面,重点介绍怎样使用set-property标记。需要提醒的是<set-property property="task" value="Mytask"/>并不是用来设置Action的属性。我看到很多人说,使用这个标记就是要给action定义一个命名为set-property所指定的属性名task的字段,并提供setter/getter访问器,我要指出的是,这种做法是完全错误的。
正确的解释是<set-property property="task" value="Mytask"/>用来设置与Action相关联的配置类的属性。默认情况下这个配置类是org.apache.struts.action.ActionMapping,set-property设置的是ActionMapping的属性值。为了设置自定义的属性值task,需要继承ActionMapping实现一个子类,命名为MyMapping,并定义task属性,如下:
+++++++++++++++++++++++++++++++++++++++++++++++++++
public class MyMapping extends org.apache.struts.action.ActionMapping{
private static final long serialVersionUID = 1L;
private String task;
/**
* @return the task
*/
public String getTask() {
return task;
}
/**
* @param task the task to set
*/
public void setTask(String task) {
this.task = task;
}
}
+++++++++++++++++++++++++++++++++++++++++++++++++
然后在action的配置中指定与它相关联的配置类为自定义的MyMapping。比如,我们在struts配置文件中定义了LoginAction,那么它的配置是这样的:
++++++++++++++++++++++++++++++++++++++++++++++++++++
<action-mappings>
<action path="/login" name="LoginActionForm" input="/login/login.jsp"
className="com.myapp.struts.myactionmapping.MyMapping">
<!--configuration custom ActionMapping by setting className
property as custom ActionMapping
-->
<set-property property="task" value="MyTask"/>
<forward name="success" path="/welcomeStruts.jsp"/>
<forward name="error" path="/login/login.jsp"/>
</action>
</action-mappings>
+++++++++++++++++++++++++++++++++++++++++++++++++++++
这样配置后,action实例化时,对应的MyMapping的“task”属性将被设置为<set-property property="task" value="MyTask"/>
中value指定的值“MyTask”。然后可以在execute方法中通过mapping.getTask()取得其值。这种配置只影响这一个Action。如果你想让所有Action的execute方法中都可以通过mapping.getTask()取值的话,可以做如下配置:
++++++++++++++++++++++++++++++++++++++++++++++++++++
<action-mappings type="com.myapp.struts.myactionmapping.MyMapping">
<action path="/login" name="LoginActionForm" input="/login/login.jsp"
<!--configuration custom ActionMapping by setting className
property as custom ActionMapping
-->
<set-property property="task" value="MyTask"/>
<forward name="success" path="/welcomeStruts.jsp"/>
<forward name="error" path="/login/login.jsp"/>
</action>
</action-mappings>
+++++++++++++++++++++++++++++++++++++++++++++++++++++
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wang12/archive/2009/10/21/4708221.aspx
分享到:
相关推荐
3. **Spring事务管理**:插件允许Struts2的Action方法直接参与到Spring的事务管理中,无需关心事务的开启和提交。 4. **AOP集成**:结合Spring的AOP能力,可以为Struts2的Action提供切面增强,如性能监控、日志记录...
在Struts2中,你可以通过在Action类的方法上添加特定的注解,如`@Result(type = "json")`,来指示该方法应该返回JSON格式的数据。 Struts2 JSON Plugin 2.3.8版本包含了以下关键特性: 1. 自动处理Action结果:当...
- 自动映射:自动将Action的属性映射到JSON对象,简化了开发流程。 - 性能优化:针对大量JSON数据的传输进行了性能优化。 - 客户端交互:与前端JavaScript库(如jQuery)配合,实现动态更新页面内容。 3. **...
这个插件使得Action类可以直接从Spring容器中获取服务,而无需在Struts配置文件中进行复杂的配置。 Spring框架是一个全面的后端开发解决方案,它包括了DI、AOP、事务管理、数据访问/集成、Web、测试等多个模块。DI...
4. **Spring 的Bean 定义**:在Spring 配置文件中,我们可以为Struts 2 的Action 定义bean,包括其属性、依赖关系以及生命周期方法。这使得Action 的配置更加集中,易于管理和扩展。 5. **Action 实例的生命周期**...
struts2-ssl-plugin-1.2.1.jar
通过对`struts-config.xml`配置文件的详细解析,我们可以了解到如何通过不同的元素和属性来配置数据源、表单Bean以及全局异常处理等内容。这对于理解和使用Struts框架来说至关重要。希望本文能帮助读者更好地掌握...
Struts-config.xml 配置文件详解 Struts-config.xml 是 Struts 框架的主要配置文件,用于配置 Struts 应用程序的各种设置。在该文件中,可以配置数据源、Form Bean、Action 和插件等信息。下面是 Struts-config.xml...
struts2-convention-plugin-2.3.1.jar,使用注解的方式代替xml配置action,必须要引用这个包。
struts2-jfreechart-plugin-2.0.11.jarstruts2-jfreechart-plugin-2.0.11.jarstruts2-jfreechart-plugin-2.0.11.jar
1. **StrutsDataSource管理器**:Struts框架提供了一个名为StrutsDataSource的管理器,用于在Struts配置文件(Struts-config.xml)中定义和配置数据库连接池。该管理器支持任何实现了`javax.sql.DataSource`接口的...
使用Struts2-Spring-Plugin-2.2.3.1.jar时,开发者需要在Struts2的配置文件中指定插件,并在Spring配置文件中声明Action类和其他相关bean。一旦配置正确,Struts2框架在处理请求时会自动从Spring容器中获取Action...
### Struts框架中struts-config.xml文件配置详解 #### 一、引言 在Java Web开发领域,Struts是一个非常重要的MVC(Model-View-Controller)框架,它极大地简化了Web应用程序的开发过程。而在Struts框架中,`struts...
搭建struts2 + spring框架时需要使用的关联jar struts.xml中action的属性class引用applicationContext中bean的属性id指向的值
struts2-convention-plugin-2.3.15.3.jar struts2配置Action注解要用到的包,真正实现零配置
struts2 2.3.16.3 版本配置json所需要的jar文件。有时候版本不一致也会配置失败。
struts2-dojo-plugin-2.3.1.2.jar
本文档资料适合java struts2 ajax dojo开发人员使用.
ajax结合Struts2要用到的jar包