JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

Struts2的结果跳转方式

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

Struts2的结果页面配置

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


Struts2访问ServletAPI的方式

原理:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

三种方式访问ServletAPI:

        1)通过ActionContext  推荐使用

        2)通过ServletActionContext

        3)通过实现接口方式


第一种方式--通过ActionContext访问:

Action写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

struts2配置页面写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

访问js页面:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


第二种方式--通过ServletActionContext

Action写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

struts2配置文件写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

访问页面效果:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


第三种方式--通过实现接口方式

Action的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

Struts配置文件写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

访问效果:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


Struts2参数获取及数据封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

StrutsMVC示意图:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


Action的生命周期:

        1)每次请求到来时,都会创建一个新的Action实例

        2)Action是线程安全的.可以使用成员变量接收参数

struts数据的封装

        两种方式:1)属性驱动      2)模型驱动

第一种方式参数获取及封装(属性驱动):
    ①:使用set方法

Aciton的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

struts配置文件的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

form1.jsp写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

运行效果:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


 ②:使用表达式直接封装到对象中

编写一个对象类:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

Action的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

struts的配置文件写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

form2.jsp的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

访问效果展示:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


第二种方式参数获取及封装(模型驱动):

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


struts配置文件写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

form3.jsp的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

效果展示:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装


Struts2的集合类型参数封装

Action的写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

struts配置文件写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

form4.jsp写法:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装

运行效果:

JAVA_WEB Struts2框架学习第二章 结果的跳转方式(转发,重定向...)、访问servletApi方式、如何获得参数、集合类型参数封装