DynaActionFrom的用法也比较简单,从他的名字上面来看,有个ActionForm原来的时候我们写的ActionForm需要写上他的setter与getter方法,这里我们用了DynaActionForm以后就不必再用到写这些方法了。DynaActionForm是ActionFrom的一个子类,他用的存储方式是Map的存储方式,下面我们看看怎么配置DynaActionForm与实现DynaActionForm。
struts-config.xml的配置方式:
<form-bean type="org.apache.struts.action.DynaActionForm"
name="adminClassForm">
<form-property
type="com.parschl.model.system.baseinfo.AdminClass"
name="adminClass" />
<form-property type="java.lang.Integer" name="pageNumber"
initial="1" />
<form-property type="java.lang.Integer" name="pageSize"
initial="20" />
</form-bean>
这个就是其配置方式,我们从这里配置好了以后呢,就不用在写ActionForm了,我们需要用到什么的时候呢,直接到DynaActionForm中来拿就可以了。但是怎么才能拿出来呢?
方法很简单,与我们从ActionFrom中拿的方法一样。
DynaActionForm daf = (DynaActionForm)form.getString("name");
这样我们就可以从里面把我们想要的东西取出来了。是不是比ActionFrom用法方便多了,不用再写setter与getter方法了
如下例子:
/**
* @param form
* @param request
* @param studentTypeIds
* @param departmentIds
*/
protected void searchBar(ActionForm form, HttpServletRequest request,
String studentTypeIds, String departmentIds) {
DynaActionForm dynaForm = (DynaActionForm) form;
String studenGraduateAuditStatus = request
.getParameter("studentGraduateAuditStatus");
int pageNumber = ((Integer) (request.getAttribute("pageNumber") == null ? dynaForm
.get("pageNumber")
: request.getAttribute("pageNumber"))).intValue();
int pageSize = ((Integer) (request.getAttribute("pageSize") == null ? dynaForm
.get("pageSize")
: request.getAttribute("pageSize"))).intValue();
Pagination stds = studentService.searchStudent(
populateStudent(request), pageNumber, pageSize, studentTypeIds,
departmentIds, studenGraduateAuditStatus);
addOldPage(request, "studentList", stds);
Results.addObject("studenGraduateAuditStatus",
studenGraduateAuditStatus);
}
分享到:
相关推荐
用jsp、action、struts-config.xml配置文件,举例说明了DynaActionForm 在struts1 中的作用。
DynaActionForm(动态表单)介绍及应用,Struts framework中,ActionForm对象的封装及应用,通过Struts framework中的DynaActionForm类及其子类可以实现动态的ActionForm ,动态的ActionForm允许你通过Struts的配置...
好东西 struts
在"Struts原理(二)"中,我们将深入探讨如何利用Struts框架的一些高级特性,如DispatchAction、资源文件的国际化、错误信息的显示、DynaActionForm以及实体对象作为Form属性的使用。 **掌握DispatchAction** ...
如果希望在每次将表单数据组装到动态ActionForm之前先重置所有属性至默认值,可以通过定义一个扩展`DynaActionForm`类的子类,并覆盖其`reset()`方法来实现。具体做法是在`reset()`方法中调用`initialize()`方法。 ...
DynaActionForm dynaForm = (DynaActionForm) form; // 动态添加表单字段 dynaForm.set("fieldName1", "fieldValue1"); dynaForm.set("fieldName2", "fieldValue2"); // ... } } ``` 在JSP页面上,可以使用...
**使用DynaActionForm和DynaValidatorForm** 在Struts中,`DynaActionForm`和`DynaValidatorForm`是两种常用的动态表单处理类。 - **DynaActionForm**:提供了一种动态管理表单字段的方式,字段可以在运行时添加...
在配置文件中,我们使用`<form-bean>`元素来声明一个DynaActionForm,并通过`<form-property>`元素来定义表单字段。例如: ```xml <form-bean name="loginForm" type="org.apache.struts.action.DynaActionForm"> ...
这篇学习笔记将深入探讨ActionForm的作用、使用方法以及它在Struts架构中的位置。 在MVC模式中,ActionForm扮演了模型层和控制器层之间的桥梁角色。当用户在视图层(通常是HTML表单)填写信息并提交后,这些数据会...
ActionForm的property必须声明然后才可以使用,不过在查询时我们常常需要输入一些查询条件,这些查询条件(property)其实不需要在formbean中声明,可以使用Map对象来封装整个查询表单提交的数据。 4. ActionForm的...
5. **JSP页面**: 在JSP页面中,你可以使用`<html:form>`标签来创建表单,通过指定DynaActionForm的名称,可以动态地生成表单元素。`<html:dynamic>`标签用于根据ActionForm的属性动态生成输入控件。 6. **控制器层...
这里,我们使用了`DynaActionForm`,它是Struts 1.0中动态表单的实现,可以方便地处理不同类型的表单字段。 3. **创建表单Bean**:在Struts应用中,表单Bean(通常是DynaActionForm)用于封装用户输入的数据。对于...
例如,通过`<form-bean>`标签配置DynaActionForm,并在Java代码中使用`DynaActionForm`的get和set方法获取或设置值。 - **BeanUtils**:Jakarta Commons BeanUtils库提供了方便的Java Bean操作,可以简化对象属性的...
在Spring教程中,通过实例MyUsers程序,介绍了如何使用Struts作为前端框架,Spring作为中间层框架以及Hibernate作为后端持久层框架来开发一个Web应用程序。具体步骤包括: 1. 下载并安装Java开发工具包(JDK),...
本文对 Struts 1.x 的核心概念和技术进行了详细介绍,包括配置文件解析、ActionForm 和 DynaActionForm 的使用、数据转换以及表单验证等方面。希望这些内容能帮助读者更好地理解和掌握 Struts 1.x 框架的使用方法。
DynaActionForm 技术可以不必创建一个个具体的 ActionForm 类的代码,而只需要在 Struts 的系统的配置文件 struts-config.xml 中进行 ActionForm 组件种的各个属性的配置定义,从而达到减少了 ActionForm 类的数目的...
- 处理表单提交后的数据,使用`DynaActionForm`对象获取动态字段值。 #### 九、Struts预定义Action - **ForwardAction**: - 用于简单的转发操作。 - 无需编写额外的Action类。 - **DispatchAction**: - ...
以下是使用Eclipse开发Struts1.2的关键步骤及相关的知识点: 1. **创建Dynamic Web Project**: - 在Eclipse中,选择"File" -> "New" -> "Dynamic Web Project",输入项目名称和选择服务器环境(如Tomcat)。 - ...
- 使用DynaActionForm作为模型层,封装用户输入的数据。 **10. Web层单元测试** - 测试Action的行为是否符合预期。 **11. 创建JSP页面** - 构建用户界面,展示数据。 **12. 浏览器验证** - 在浏览器中测试功能...