第二章:深入struts配置文件
在这一章里,我们要学习以下几点内容
1:配置ActionSerlvet拦截用户请求
2:ActionForm的创建与配置
3:Action的创建与配置
4:Forward的定义转向配置
5)Action的excute方法
配置ActionSerlvet拦截用户请求
1:ActionSerlvet是核心控制器,是由struts框架自动产生的,它像过滤器一样会拦截所有用户的请求。但是这个过滤器必须要在web.xml文件中进行配置才能够发挥它的作用。幸运的是这些配置struts已经帮我们自动配置好,但是有必要进行了解.
........
配置ActionForm接受用户输入的数据
1)ActionForm实际上就是一个非常简单的javaBean。在它里面有许多的get,set方法,它的目的就是为了封装 从用户输入的数据。因此ActionForm通常与表单页面对应,每个表单对应一个ActionForm。表单中的输入 项对应ActionForm的一个属性.
2)Struts要求ActionForm必须要继承自org.apache.struts.action.ActionForm基类。
3)必须保证ActionForm中的属性名一定要与表单中元素名一致
4)所有的ActionForm必须要在Struts-config.xml中进行配置。配置节如下:
........
5)一个ActionForm必须至少指定两项。
name:该项用于标识ActionForm的Id,以便于传递给Action进行使用
type:ActionForm的实现类
6)在eclipse中添加一个ActionForm的步骤如下:
A:右击--->new--->other--->myeclipse--->webstruts-->struts1.2 form
B:在弹出的对话框中
name中输入ActionForm的标识id
superclass:指定ActionForm的父类名。一般选择org.apache.struts.action.ActionForm
formtype:指定ActionForm的类名,因为它是一个javaBean。相当于为类取一个名字
formProperty选项卡中输入ActionForm的属性。
Action的创建与配置
1)Action是系统的业务控制器,它用于接收从ActionServlet转发过来的请求,并触发execute方法,我们可以 在execute方法里面调用模型进行数据处理
2)struts要求Action必须继承自org.apache.struts.action.Action基类
3)所有的Action必须要在struts-config.xml中进行配置。配置节如下:
type="org.chen.struts.loginAction">
说明:
A)name:并不是Action本身的名字,而是与之关联的ActionForm的名称
B)path:非常重要的属性。ActionSerlvet将用户的请求转发与之同名的Action.同名的意思是将请求 的".do"后缀去掉。匹配Action的path属性值
C)struts-config.xml中只要遇到path属性都要加"/"表示相当于WebRoot根目录而言
D)type:Action的类名
E)forward:将Action的转发映射到实际的jsp页面,在实际编程时应该用逻辑名进行转发
F)一个Action可以有ActionForm,也可以没有ActionForm。如果是post提交的一般会有ActionForm
比如: