学习Strut2第二天
1、结果页面配置:
(1)、全局结果页面配置:
(2)、局部页面配置:
如果两种配置都有,以局部配置为最终结果。
2、type属性:
(1)dispatcher:默认值,以转发的方式跳向结果页面。
(2)redirect:以重定向的方式跳向结果页面。
(3)以上两个都是到页面的配置,如果要跳转到另外的action中,可以配置chain(转发)和redirectAction(重定向),一般不用chain,因为有缓存问题。
3、在action中获取表单数据的三种方式
在action中没有request对象,所以要先获取request对象。
(1)使用ActionContext类。
通过该类的getContext()方法获取该类对象,然后调用getParameters()获取数据。
(2)使用ServletActionContext类。
(3)使用接口注入方式。
4、在action中操作域对象
(1)request
(2)session
(3)ServletContext
5、在struts封装数据到实体类对象
(1)原始方式获取表单数据封装到实体类对象
(2)属性封装
在action成员变量的位置定义变量,变量名和表单name相同。生成set和get方法。
这样在表单提交到action时,自动将数据放到成员变量中去,再new一个实体对象,将数据封装到实体类对象中去。
(3)模型驱动封装
可以直接将表单数据封装到实体类中去,在开发中使用最多的方式。
Action实现ModelDriven<实体类名>接口并实现接口的getModel()方法。在action中创建实体类对象。
注意:不能在一个action中同时使用属性封装和模型驱动封装来获取同一个表单的数据,如果同时使用,模型驱动封装起作用。
(4)表达式封装
第一步:在action中声明实体类对象。
第二步:生成实体类对象的set和get方法。
第三步:在表单的name属性值用表达式的方式。
好处:使用表达式封装可以将数据封装到不同对象中去。
6、封装数据到集合中去。
(1)封装到list集合。
第一步:在action中声明List
第二步:生成list的get和set方法。
第三步:在表单输入项里写表达式。
(2)封装到map集合。
第一步:在action中声明Map集合
第二步:生成map的get和set方法。
第三步:在表单输入项里写表达式。