struts标签<html:form>会将表单中的属性自动封装成Form这句话怎么解释?

谁给我举了实例html的from和他的区别是什么... 谁给我举了实例
html的 from 和他的区别是什么
展开
 我来答
百度网友f012d49
推荐于2016-09-20 · TA获得超过353个赞
知道小有建树答主
回答量:369
采纳率:0%
帮助的人:405万
展开全部
比如:
<html:form action="/empdelete.do" method="post">
</form>
这里的action要对应struts-config.xml中配置过的这个"path"属性,如下面的代码开头那个
<action path="/empdelete" type="org.springframework.web.struts.DelegatingActionProxy"
name="deleteForm" scope="request" input="/emppageshow.do">
<forward name="success" path="/emp/emp_page_dosuccess.jsp" />
<forward name="failed" path="/emppageshow.do" />
</action>
那么form在哪呢?form对应的就是上面代码中的“name”属性的值,也就是deleteForm,不过这里“deleteForm”还只是个别名,也是在struts-config.xml中配置过的,如下:
<form-bean name="deleteForm" type="demo.eop.struts.forms.DeleteForm" />
那么真正对应的form类就是demo.eop.struts.forms路径下的DeleteForm.java了

最后,你或许要问DeleteForm具体都是些什么?
package demo.eop.struts.forms;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;

public class DeleteForm extends ActionForm {

private int[] id;

public int[] getId() {
return id;
}

public void setId(int[] id) {
this.id = id;
}
}

这是一个很简单的form类,说是javabean也好,说是pojo也罢,这能理解吧?
id对应的是网页上的表单,如下面一个多选框,因为我是多选框,所以这里要定义id为int数组,如果只是个文本框那该就只是个String:
<html:multibox property="id">
<bean:write name="esa" property="eid" format="#"/>
</html:multibox>
form类里的id对应的就是这里的property="id"。

所以,你那句话的意思就是,如果你用了这个标签,系统就认为这是个form,那么你就必须为这个form编写一个form类,页面上的所有表单控件的名字都要写进去,form类中可以多写几个不用的,但不能少写,否则报错
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式