我在action中从数据库取得了所有空间数据的表名,并存入了数组tableName,想用actionForm直接传递到jsp页面上。经过我一下午的努力,终于实现了一个简单的例子。
1、tableNameForm的定义:
public class tableNameForm extends ActionForm {
private Integer count; //表的个数
private String[] name; //表名数组
public Integer getCount() {
return count;
}
public void setCount(Integer count) {
this.count = count;
}
public void setName(String[] name) {
this.name = name;
}
public String[] getName() {
return name;
}
public ActionErrors validate(ActionMapping actionMapping,
HttpServletRequest httpServletRequest) {
/** @todo: finish this method, this is just the skeleton.*/
return null;
}
public void reset(ActionMapping actionMapping,
HttpServletRequest servletRequest) {
}
}
2、然后在action中,要用setName()对form赋值:
……
String[] tablename = new String[columnCount]; //用数组存放空间数据表的表名,这里的columnCount在此之前从数据库查出来的,表示表的个数
for (int i = 0; i < columnCount; i++) //数组初始化
tablename[i] = "";
……
while(rs.next()){
tablename[i++] = rs.getString("TABLENAME").trim();
}
……
tableNameForm.setName(tablename);
……
3、最后,在jsp页面中显示的时候用到了两个taglib:bean和logic,具体代码断为:
……
<logic:present name="tableNameForm" property="name">
空间数据表列:<br />
<logic:iterate id="tablename" indexId="ind" name="tableNameForm" property="name">
<bean:write name="ind"/>.<bean:write name="tablename"/><br />
</logic:iterate>
</logic:present>
……
总结:先在form中建立数组属性及其相应的get和set方法,然后在action中对其用set进行赋值,最后就是在jsp中显示出来。<logic:iterate>中的id指定了<bean:write>中要输出的内容,所以这个必须要和<bean:write>中的name属性一致;indexId指定迭代的序号,表示当前是第几条记录;name指定包含了数组的form的名字;property指定需要迭代的form中的数组属性名。
刚才的jsp片断显示出来的页面效果就是:
空间数据表列:
0.GDS_LANDMK
1.GDS_ROAD
分享到:
相关推荐
在Struts框架中,ActionForm类是用于封装请求参数并传递到Action类进行业务逻辑处理的关键组件。当ActionForm中的属性涉及到对象数组时,处理方式就变得稍微复杂一些。以下将详细介绍如何处理ActionForm属性中存在...
在Struts中,ActionForm类是处理用户输入数据的核心组件,它封装了请求参数并负责业务逻辑验证。本文将详细讨论如何在Struts中使用ActionForm的`validate`方法进行数据验证。 `validate`方法是在ActionForm中定义的...
当我们需要在客户端提交多行数据时,通常会利用表单来收集信息,然后将这些数据传递到服务器端的ActionForm。这个过程涉及到如何将客户端的数据组织成一个集合,如List,并将其绑定到ActionForm的属性上。在本篇中,...
ActionForm是Struts框架中的一个重要组件,它是模型层与控制器层之间的桥梁,用于处理用户在表单中提交的数据。 在Struts框架中,ActionForm类负责收集、验证和封装来自用户界面的数据。当用户通过HTML表单提交请求...
使用Struts1的ActionForm进行表单验证是一种常见的做法,它允许我们在服务器端对用户输入进行严格检查,确保数据的完整性和安全性。同时,通过追加错误信息,可以友好地提示用户,提高用户体验。 以上就是关于...
主要是actionForm的基本验证,重写validate方法,返回actionErrors,然后根据资源文件显示错误。 这是一个demo例子,直接导入eclispe中即可。 并且这部分内容会在相应的博客中介绍,稍后会更新博客。
在Struts中,ActionForm是继承自JavaBeans的,主要用于处理用户的表单数据和业务逻辑。下面是ActionForm的详细介绍: 1. ActionForm的继承关系 在Struts中,ActionForm继承自JavaBeans,并且提供了两个主要的实现...
在早期的Struts 1版本中,ActionForm是MVC设计模式中的Model部分,它作为控制器(Controller)与视图(View)之间的桥梁,负责接收、验证和传递用户提交的数据到业务逻辑层。 ActionForm类通常继承自Struts提供的...
在这个"Struts Hibernate Spring 集成开发宝典 actionform"中,很可能是详述了如何在实际项目中应用这些技术,包括配置示例、代码实例、常见问题及解决方案等。通过学习这个宝典,开发者可以更好地理解和掌握这三大...
在传统的Struts开发中,ActionForm类通常用于封装请求参数并传递给业务逻辑层进行处理。 动态ActionForm的概念是为了提高代码的灵活性和可维护性。在传统的Struts应用中,每个Action通常与一个特定的ActionForm关联...
这篇学习笔记将深入探讨ActionForm的作用、使用方法以及它在Struts架构中的位置。 在MVC模式中,ActionForm扮演了模型层和控制器层之间的桥梁角色。当用户在视图层(通常是HTML表单)填写信息并提交后,这些数据会...
在开发基于Struts的Web应用时,乱码主要出现在三个方面:页面显示乱码、参数传递乱码以及国际化资源文件乱码。解决这些问题的关键在于确保整个应用的统一编码,通常是使用UTF-8编码。 首先,对于**页面显示中文乱码...
ActionForm在早期的Struts1中被广泛用于接收和验证用户输入,但在Struts2中,这个概念已经被更先进的模型驱动机制所取代。不过,这里提到的"ActionForm自动填充表单"可能是指Struts2中的一种特性,即模型驱动...
最近自学java中的框架-struts写了一些小例子,这都是很经典的程序,如果大家瞧得起要下载去看看,顺便给俺找找不足的地方。我的qq 821865130 email qingtian_hechen@163.com 希望大家能多多给我帮助。在此谢谢各位!...
最近自学java中的框架-struts写了一些小例子,这都是很经典的程序,如果大家瞧得起要下载去看看,顺便给俺找找不足的地方。我的qq 821865130 email qingtian_hechen@163.com 希望大家能多多给我帮助。在此谢谢各位!...
Struts提供`<html:errors>`标签用于显示ActionForm验证时的错误信息,以及`<html:message>`标签用于显示国际化消息。例如: ```jsp ``` 7. **隐藏字段** `<html:hidden>`标签用于创建隐藏字段,这对于传递...
【ActionForm】是Java Web开发中的一个概念,主要在Struts框架中被广泛使用。它是一种模型层对象,用于接收用户从视图层(通常是一个HTML表单)传递过来的数据,并将这些数据转发到控制器(Controller)进行业务逻辑...
在这个名为“Struts中不同的Action和ActionForm组合.rar”的压缩包中,主要探讨的是Struts框架中Action和ActionForm的组合使用方式,以及它们在处理用户请求和数据验证过程中的作用。以下是对这个主题的详细解释。 ...