平时做些多表格表单显示时,actionform中经常会用到些数组或多重数组属性,map的情况,下面把我平时用到的几种总结一下:
假定actionform名为myForm.java 在sturts-config.xml中定义名也为 myForm
1.字符串或简单类型属性
myForm.java 中定义为 private String abc; (get ,set 方法略)
页面上: <bean:write name="myForm" property="abc" /> (显示abc中存储的内容)
2.数组属性
myForm.java 中定义为 private String[ ] array; (get ,set 方法略)
页面上: <bean:write name="myForm" property="array[4]" /> (显示数组array中第5个对象的值)
3.持久类对象属性
myForm.java 中定义为 private Pojo pj ; (get ,set 方法略)
页面上: <bean:write name="myForm" property="pj.item" /> (显示对象pj中item属性的值)
4.双维数组属性
myForm.java 中定义为 private List result_list ; (get ,set 方法略)
result_list 中每一项存储的内容为一数组
页面上:
<logic:iterate id="result" name="showResultForm" property="result_list" >
<bean:define id="resultArray" name="result" type="String[ ]"></bean:define>
<%=resultArray[0] %>
<%=resultArray[1] %>
<%=resultArray[2] %>
</logic:iterate>
循环显示result_list中每个数组中的前三项.
5.Map属性
myForm.java 中定义为 :
private Map map=new HashMap();
private Object value;
public Map getMap() {
return map;
}
public void setMap(Map map) {
this.map = map;
}
public Object getValue(String key)throws Exception {
return getMap().get(key);
}
public void setValue(String key,Object value) {
this.value = getMap().put(key, value);
}
页面上:
<bean:write name="myForm" property="value(key)" />
其中key为你在action里setValue(key,Object)中的key
例如我在action中
MyForm myForm=(MyForm )form;
myForm.setValue("0101","abc");
页面上
<bean:write name="myForm" property="value(0101)" />(这里再次说明我了,我以前发的一篇文章里关于property是取的方法名字去掉set/get后第一个大写字母变小写的名称。其实就是调用的方法。而El表达式才是真正取的Form里的属性。)
显示abc
分享到:
相关推荐
本文将详细讨论如何在Struts中使用ActionForm的`validate`方法进行数据验证。 `validate`方法是在ActionForm中定义的一个可选方法,用于在提交表单数据后验证用户输入的有效性。这个方法通常会在调用Action的`...
注意,你需要确保在ActionForm类中提供相应的getter和setter方法,以便Struts框架能够正确地设置和获取List属性。 提交表单后,Action类接收到ActionForm实例,可以通过items属性访问并处理这些数据。例如,你可能...
ActionForm是Struts1中处理用户输入的核心组件,它负责接收、验证和封装来自表单的数据。在本文中,我们将深入探讨如何利用ActionForm实现表单验证,并在验证失败时追加错误信息。 1. **ActionForm介绍** ...
Struts框架在调用set方法时,会尝试进行类型转换,将字符串类型的请求参数转换为ActionForm中属性期望的数据类型。如果转换失败,例如用户输入的不是一个有效的数字,Struts会抛出一个TypeMismatchException。...
Struts ActionForm是Java Web开发中Struts框架的一个核心组件,主要用于处理用户在表单中的输入数据。在早期的Struts 1版本中,ActionForm是MVC设计模式中的Model部分,它作为控制器(Controller)与视图(View)...
3. **ActionForm的使用**:如何创建ActionForm类,定义属性并添加对应的get和set方法,以及如何在struts-config.xml中配置ActionForm。 4. **数据验证**:ActionForm不仅可以收集数据,还可以进行数据验证。通过...
主要是actionForm的基本验证,重写validate方法,返回actionErrors,然后根据资源文件显示错误。 这是一个demo例子,直接导入eclispe中即可。 并且这部分内容会在相应的博客中介绍,稍后会更新博客。
ActionForm可以在request、session或application作用域中使用。在request作用域中,ActionForm实例会被创建和销毁;在session作用域中,ActionForm实例会被多个请求共享。 5. ActionForm的优点 使用ActionForm可以...
在这个名为“Struts中不同的Action和ActionForm组合.rar”的压缩包中,主要探讨的是Struts框架中Action和ActionForm的组合使用方式,以及它们在处理用户请求和数据验证过程中的作用。以下是对这个主题的详细解释。 ...
Struts框架中的ActionForm乱码问题以及Servlet全局过滤器的转义编码处理是Java Web开发中常见的字符编码问题。在开发基于Struts的Web应用时,乱码主要出现在三个方面:页面显示乱码、参数传递乱码以及国际化资源文件...
4. **类型转换**:Struts框架提供了TypeConverter机制,使得不同类型的数据可以自动转换为ActionForm所需的类型。在动态ActionForm中,我们需要理解如何自定义TypeConverter以便处理各种数据类型。 5. **验证逻辑**...
4. **使用ActionForm**: 将Spring的ApplicationContext引入Struts,使ActionForm能够通过依赖注入获取SessionFactory,然后在业务逻辑中调用Hibernate的方法进行数据库操作。 5. **配置过滤器**: 设置Struts与Spring...
这篇学习笔记将深入探讨ActionForm的作用、使用方法以及它在Struts架构中的位置。 在MVC模式中,ActionForm扮演了模型层和控制器层之间的桥梁角色。当用户在视图层(通常是HTML表单)填写信息并提交后,这些数据会...
总结来说,处理ActionForm属性中存在对象数组的情况,主要涉及以下几个步骤: 1. 创建实体类(Entity)并定义其属性。 2. 在ActionForm中声明对象数组属性,并重写`reset`方法以初始化数组。 3. 在JSP页面中动态...
要使用 Validator 插件,首先需要在 `struts-config.xml` 文件中进行配置,然后在 ActionForm 类中使用相应的注解或 XML 配置来进行验证。 #### 结语 本文对 Struts 1.x 的核心概念和技术进行了详细介绍,包括配置...
最近自学java中的框架-struts写了一些小例子,这都是很经典的程序,如果大家瞧得起要下载去看看,顺便给俺找找不足的地方。我的qq 821865130 email qingtian_hechen@163.com 希望大家能多多给我帮助。在此谢谢各位!...
然后,在Action类中,声明一个`UserForm`类型的属性,并实现`getModel()`方法返回这个模型对象。 ```java public class MyAction extends ActionSupport implements ModelDriven<UserForm> { private UserForm ...
最近自学java中的框架-struts写了一些小例子,这都是很经典的程序,如果大家瞧得起要下载去看看,顺便给俺找找不足的地方。我的qq 821865130 email qingtian_hechen@163.com 希望大家能多多给我帮助。在此谢谢各位!...
【ActionForm】是Java Web开发中的一个概念,主要在Struts框架中被广泛使用。它是一种模型层对象,用于接收用户从视图层(通常是一个HTML表单)传递过来的数据,并将这些数据转发到控制器(Controller)进行业务逻辑...