变量上下文是存储变量的容器,是动作执行时的环境。更多内容可以参看动作的文档。
由于动作最终执行的是Java静态方法,所以在Java的静态方法中比较容易说明变量上下文的使用方法。
public class Example{ //动作所使用的Java静态方法的参数固定为ActionContext,ActionContext是变量上下文 public static void run(ActionContext actionContext){ //变量上下文的作用是获取变量 Object aobj = actionContext.get("aobj"); String astring = actionContext.getObject("astring"); //也可以对变量上下文设置变量 actionContext.put("aobj", aobj); actionContext.put("astring", astring); } }
在一些脚本语言的动作里,比如GroovyAction,脚本所需要的变量也是通过变量上下文传入的。
println aobj; println atring;
比如在上面的脚本里打印了aobj和astring两个变量,这两个变量是要在调用动作之前设置在ActionContext(变量上下文)中,否则Groovy脚本执行时会抛出变量未定义的异常。
每一个动作执行时都在变量上下文的环境下,而动作最终执行的是Java静态方法或其它脚本语言,所以对变量上下文的控制本质上都是Java和脚本语言里进行的。
Copyright © 2007-2014 XWorker.org 版权所有