Struts2_通过ActionContext获得WEB资源

1.什么时web资源

    httpServletRequest,    HttpSession,  ServletContext   等原生Servlet API


2. 为什么访问WEB资源

    B/S 的应用的Controller中必然需要访问WEB资源


3. 如何访问

        1. 和Servlet API解耦的方式

                只能访问有限的Servlet API对象, 且只能访问有限的方法,(读取请求参数, 读写域对象属性等)

                >使用ActionContext  (Action的上下文,能够获取 session, request ,application参数)

                        ActionContext actionContext=ActionContext.getContext();

                        //1.  获取application (同Session)

                Map<String, Object> applicationMap= actionContext.getApplication();     //改为sessionMap也行,                                                                                                                                                    getSession()

                        applicationMap.put("applicationKey", "applicationValue")

                                                        //jsp页面显示时    #{ applicationScope.applicationKey}


                        //2. 获取requestMap request获取时不同(ActionContext中并没有提供getRequest方法来获取 request的对

                                                         象)

                        Map<String, Object> requestMap =(Map<String, Object>)  actionContext.get("request");

                        //3. 获取请求参数的Map

                        >>getParameters的返回类型为在Map<String , Object>

                        >>parameters  只能读不能写入数据

                        System.out.println(  (String[]) parameters.get("name")[0]  )

                >实现XXXaware接口

         2. 和Servlet API耦合的方式  

                可调用原生方式




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值