Action访问Servlet的API_,主要访问如下:
1.>获取request对象
2.>获取请求参数
3.>获取response对象,可用于传递cookie
3.>获取作用域对象,request,Session,application,并设置共享数据,
访问方式一:
通过实现感知接口中的setter方法,讲其setter方法中的request参数传递到本类中来:
即,在本类中定义一个成员变量,来接收setter方法中的request.
如果,还需要获取response,Session,application等对象,,那么同理只需再同时实现ServletResponseAware,
ApplicationAware,SessionAware接口,并实现其中的setter方法即可,如图:
访问方式二:通过struts的ServletActionContext工具类
通过该类中的静态方法来获取相应的request和response对象,
方法3:通过ActionContext工具类
该类为ServletAcitonContext的父类,表示Action的上下文对象,表示Action存在环境
通过该类中的getContext()方法创建该类对象,,再通过调用该类方法获取相应对象,如使用getParameters()方法,,会返回
一个参数的属性名和属性值数组的Map,.而需要设置请求参数时,则通过向该得到的Map中添加键值对(即使用Map.put(key,value)方法;),
即可完成共享请求数据的封装设置.
同样的,对于Session和application,首先使用getSeesion(),和getApplication(),,这个方法也返回一个Map集合,同样的,需要设置共享参数时,
则通过向该得到的Map中添加键值对(即使用Map.put(key,value)方法;),即可完成共享数据的封装设置.如图,