struts2结果页面配置与表单数据的操作

Posted 软软爱Java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2结果页面配置与表单数据的操作相关的知识,希望对你有一定的参考价值。

  • 结果页面配置:

  • 全局结果页面:

-- result标签里面配置action的方法的返回值到不同的路径;

-- 如果多个action,方法里面返回值是相同的,访问的页面也是相同的,这个时候使用全局结果页面配置

  • 局部结果页面:

-- 如果既配置了全局的,也配置了局部的,那么最终的以局部的配置为准;

struts2结果页面配置与表单数据的操作

  • result标签中的type属性:

-- result标签中除了name属性,还有一个type属性;

    1):type属性:表示如何到路径里面(转发还是重定向);

-- type属性值:

    1):默认值(dispatcher),做转发操作;

    2):redirect,做重定向操作;

以上的两个值是一般是针对到页面中的配置,在开发中我们也会配置到其他的action里面,就是用下面的值:

    1):chain:转发到action;(因为有缓存问题,所以一般不用);

    2):redirectActioin:重定向到action;


  • action获取表单提交数据

  • action获取表单提交数据主要有三种方式: 

-- 1:使用ActionContext类;

struts2结果页面配置与表单数据的操作

-- 2:使用ServletActionContext类;

struts2结果页面配置与表单数据的操作

-- 3:使用接口注入的方式;(这种方式写法比较麻烦,所以一般不用)

struts2结果页面配置与表单数据的操作

  • 在action中操作域对象;

-- request ,  session ,  servletContext;

-- 使用ServletActionContext类操作:

struts2结果页面配置与表单数据的操作

  • Struts2 封装的获取表单数据的方式;

 原始方式获取表单数据封装到实体类中:

struts2结果页面配置与表单数据的操作

struts2帮我们封装了获取表单数据的方式:

1:属性封装

-- 直接把表单提交的内容封装到action的属性中:

-- 实现步骤:

    1):在action成员变量的位置定义变量,变量的名称和表单输入项的name属性值一样;

    2):生成变量的set跟get方法;

-- 使用属性封装只是获取到数据方法属性中去,并不能把数据直接封装到实体类对象中;

struts2结果页面配置与表单数据的操作

2:模型驱动封装

-- 使用模型驱动方式,可以直接把表单提交数据封装到实体类对象中;

-- 实现步骤

    1):action实现接口 ModelDriven;

    2):实现里面的getModel方法;把创建的对象返回;

    3):在action里面创建实体类对象;     

struts2结果页面配置与表单数据的操作

-- 使用模型驱动和属性封装是需要注意的问题;        

    1):在一个action中,不能既使用属性封装个,又使用模型驱动封装获取同一个表单数据,如果同时使用,只会执行模型驱动封装;

3:表达式封装

    1):在action中生命实体类;

    2):生成实体类变量的set,get方法;

struts2结果页面配置与表单数据的操作

  3):在表单输入项的name属性值里面写表达式的形式; 

struts2结果页面配置与表单数据的操作

-- 比较表达式封装和模型驱动封装;

相同点:使用这两种封装方式,都可以把表单提交的数据封装到实体类对象中;

不同点:1):在一个action中,不能使用模型驱动把数据封装到不同的实体类对象中;

             2):使用表达式封装,可以把数据封装到不同的实体类对象中;

  • 获取表单数据封装到集合中;

-- 封装到list集合

    1):在action中生命list;

    2):生成list变量的get,set方法;

struts2结果页面配置与表单数据的操作

  3):在表单输入项中写表达式; 

struts2结果页面配置与表单数据的操作

-- 封装到map集合;

    1):声明map方法;

    2):生成get,set方法;

  3):在表单输入项中写表达式; 


以上是关于struts2结果页面配置与表单数据的操作的主要内容,如果未能解决你的问题,请参考以下文章

Struts2数据操作(第二例)

struts2-环境搭建-访问流程-配置详解-常量配置-类详解

struts2客户端与服务器端即jsp页面与action之间的关系

struts2摘抄

struts2 封装获取表单数据的方式

Struts2---将页面表单中的数据提交给Action