1)什么是WEB资源?
HttpSession, HttpServletRequest, HttpServletResponse 等原生servletAPI资源
2)为什么访问WEB资源?
B/S应用中Controller 中必然需要访问WEB资源,如向域对象中读写属性,读写cookie,读写realPath....
3)如何访问?
a.和servlet API 解耦的方式:只能访问有限的servlet API对象,并且只能访问有限的方法,如读取请求参数,读写域对象的属性,使session
>使用ActionContext
>实现XXXAware接口
>选用建议:若一个Action类中有多个action方法,且多个方法都需要使用域对象的Map或parameters,则建议使用Aware接口的方式
>session对应的Map实际上是SessionMap类型的!强转后若调用其invalidate()方法,可以使其session失效。
b.和servlet API耦合的方式:可以访问更多的servlet API对象,且可以调用其原生的方法。
>使用ServletActionContext
>实现ServletXXXAware接口