Struts2学习(7)---通过ActionContext获取WEB资源

package com.tyk.struts2.action;

public class TestActionContextAction{

    public String execute(){
        //0.获取ActionContext 对象
        //ActionContext 是Action 的上下文对象,可以从中获取到当前Action需要的一切信息
        ActionContext actionContext = ActionContext.getContext();
    
        //1.获取application 对应的Map,并向其中添加一个属性
        //可读可写
        Map<String,Object> applicationMap = actionContext.getApplication();
        //设置属性
        applicationMap.put("applicationKey","applicationValue");
        //获取属性
        Object applicationValue = applicationMap.get("applicationKey");
        
        //2.session
        //可读可写
        Map<String,Object> sessionMap = actionContext.getSession();
        sessionMap.put("sessionKey","sessionValue");
        
        //3.request
        //可读可写,读只能在同一个请求中读取
        //ActionContext 中并没有提供getRequest 方法来获取request对应的Map
        //需要手工调用get()方法,传入request字符串来获取
        Map<String,Object> requestMap = (Map<String,Object>)actionContext.get("request");
        requestMap.put("requestKey","requestValue");
        
        //4.获取请求参数对应的Map,并获取指定的参数值
        //键:请求参数的名字,值:请求参数的值对应的字符串数组
        //注意:1.getParameters 的返回值为 Map<String,Object>,而不是Map<String,String[]>
        //      2.parameters 这个Map只能读,不能写入数据,写入不报错,但不起作用
        Map<String,Object> parameters = actionContext.getParameters();
        System,out.println(((String[])parameters.get("name"))[0]);
    }
}






你可能感兴趣的:(struts2)