template session var - jmr-source/doc GitHub Wiki

sessionVar - 全局变量


###目录:###


###例子位置:###

  • demo/template/template.jmr.xml 任务中的 object/context/sessionVar

##前言##

context是内置的上下文对象,用来存放上下文的变量。

var是context中设置的变量,如果一个任务有设置action,那它的生命周期只在当前任务的action和模板中传递,否则只存在于当前任务的模板中。关于var模板变量请阅读var - 模板变量

   任务:Action
       ↓
   任务:模板

sessionVar是context中设置的全局变量,它可以在多个任务中传递,根据任务的执行顺序,从第一个任务的action到模板,再到下个任务的action和模板,直到执行完毕。

   任务1:Action
       ↓
   任务1:模板
       ↓
   任务2:Action
       ↓
   任务2:模板
       ↓
      ...
       ↓
   任务n:Action
       ↓
   任务n:模板

##用法详解##

sessionVar在Action和模版中设置变量、得到变量、标签调用的用法一样,标签调用session变量时,要设置valueScope="session"。

                           var                       sessionVar              

设置变量:         context.setVariable(...)    context.setSessionVariable(...)
得到变量:         context.getVariable(...)    context.getSessionVariable(...)
标签(以get为例):<get value="..."/>          <get value='...' valueScope="session"/>

a和b是var变量,c和list是sessionVar变量。

在模板中调用,可以在<%%>中用context调用,也可以通过标签得到。(注意var变量a和b,sessionVar变量c和list调用的不同)


⚠️ **GitHub.com Fallback** ⚠️