Struts提供两种方法实现动态form1 用动态属性建立ActionForm 一个DynaActionForm对象是一个拥有动态属性集合的对象。DynaActionForm扩展了ActionForm,它的用法允许通过在struts-config.xml声明建立一个表单对象,如下:<form-bean name="logonForm"type="org.apache.struts.action.DynaActionForm"><form-property name="username" type="java.lang.String"/><form-property name="password" type="java.lang.String"/></form-bean> RequestProcessor用和ActionForm相同的方式建立、填充并验证了DynaActionForm,例如,请求对象的参数被以<form-bean>元素中特定的动态属性填充到DynaActionForm;其他的参数简单类似。上文请参考我翻译的文章:
http://www.csdn.net/develop/Read_Article.asp?Id=18363
http://www.csdn.net/develop/Read_Article.asp?Id=18364
http://www.csdn.net/develop/Read_Article.asp?Id=18365
http://www.csdn.net/develop/Read_Article.asp?Id=18372
http://www.csdn.net/develop/Read_Article.asp?Id=18373另一种动态生成属性的方法是:采用Mappublic class testActionForm extends ActionForm { private final Map values= new HashMap(); public void setValue(String key, Object value) {
values.put(key, value);
} public Object getValue(String key) {
return values.get(key);
}
}jsp叶面内容如下<html:form action="/test.do" method="POST">
<% for (int i=0; i<10; i++) {
String name = "value(foo-" + i + ")";%>
<html:text property="<%=name%>"/><br/>
<%}
%><br/>
<html:submit property="submit" value="Submit"/><br/>
<html:reset value ="Reset"/>
</html:form>
解决方案 »
- hibernate Unable to instantiate default tuplizer异常
- 用java编写的论坛的源代码
- 大家帮我看下这段代码问题在哪里?
- 请教大家一个延迟加载的问题
- 关于JavaScript的一个问题 请各位看下
- 接收邮件的正文出现的问题
- ========**** 请教使用struts 标签实现3行4列的问题 ********===============
- 请问ifram中如何刷新子页面.急,在线等.
- 如何判断用户断线时间
- 请教 Hibernate 的 Criteria 的 in 查询
- 小弟寻找Windows Help Designer的注册号。
- 可以用sql语句检索中文表吗?
不符合javabean的标准我不认为有很大价值
DynaActionForm理解了,就是用之前先在config-struts.xml中指定一下,然后就可以在jsp页面中使用了,不用写ActionForm这个javabean。
但使用Map有什麽好处呢?
还有就是Setter方法能详细解释一下吗?