理解三个基本类:ActionForm, ActionMapping, ActionForward.
ActionForm
1,ActionForm是一个抽象类,在使用时必须继承它。
2,页面表单数据收集器,可以看作是模型和视图的中介,她负责保存表单中的数据供模型或视图使用,只能通过ActionForm验证的数据才能发送到Action处理。
3,在相应的Action的execute的方法调用前,ActionForm会利用参数填充自己。
4,理解两个特殊的ActionForm
4.1 DynaActionForm
4.2 DynaValidatorFrom继承了DynaActionForm能够对表单数据进行验证,使用时必须配置:
validator.xml 验证定义内容
validator-rules.xml 验证规则内容
struts也支持JavaScript客户端验证。
ActionMapping
1,struts的一个核心对象。
2,必须进行配置。
3,有哪些属性呢?
type 表示哪个Action
name 访问位置
scope request表示请求域
4,action标签 , 为每一个独立的action配置,配置他们的访问方式和访问控制。
5,forward标签, 配置action执行完毕返回以后,需要到达的地方。
6,理解:ActionMapping将特定请求映射到特定Action的相关信息存储ActionMapping中,ActionServlet将ActionMapping传送到Action类execute()方法,Action将使用ActionMapping的fandForward()方法,此方法返回一个指定名称的ActionForward,这样Action就完成本地转发。若没有找到具体的ActionForward,就返回一个Null.
7,总结,对于ActionMapping来说,算是一个web控制层的数据字典,这个数据字典里面存放了Action和ActionForward信息,在程序执行的过程中,查阅这个数据字典,然后到达相应位置,执行完以后,再查阅这个数据字典,转发特定信息。
ActionForward
1,ActionMapping对象方法,findForward("xx")这个方法返回一个ActionForward对象。
2,是struts核心类。
3,她的基类有4个属性,name, path, redirect, classname
4,配置文件写法
<aciton-mapping>
<action>
<forward>
</forward>
</action>
</action-mapping>