struts2中freemarker访问request session Application parameter对象

来源:互联网 发布:js url encode 编码 编辑:程序博客网 时间:2024/05/16 05:39
struts2 freemarker request session parameter

使用Request里的Attribute值最简单的方法就是直接${AttributeName}或者安全一点:${AttributeName!"default Value"}

1.取Application范围的对象

xml 代码

   1. <#if Application.myApplicationAttribute?exists> 

   2.      ${Application.myApplicationAttribute}  

   3. </#if> 

或者 :  ${Application.myApplicationAttribute!"default value"}  

2.取session范围的对象

xml 代码

   1. <#if Session.mySessionAttribute?exists> 

   2.      ${Session.mySessionAttribute}  

   3. </#if> 

或者 :   ${Session.mySessionAttribute!"default value"}  

3.取request范围的对象

xml 代码

   1. <#if Request.myRequestAttribute?exists> 

   2.       ${Request.myRequestAttribute}  

   3. </#if> 

或者 :   ${Request.myRequestAttribute!"default value"}  

4.取request parameter范围的对象

xml 代码

   1. <#if Parameters.myParameter?exists> 

   2.      ${Parameters.myParameter}  

   3. </#if> 

或者 : ${Parameters.myParameter!"default value"}  

5.取context parameter范围的对象

xml 代码

   1. ${stack.findValue('#myContextParam')} 



request 对象直接对应 HttpServletResponse

例如 获取 当前网页地址:  ${request.requestURL}

客户端IP地址:  ${request.getRemoteAddr()} 或者  ${request.remoteAddr}

提交方式:  ${request.method}

等等



Request: 用于获取Request对象中的attribute对象。

例如:${Request["myRequestAttribute"]} 这样是直接在页面输出属性值。相当于request.getAtrribute("myRequestAttribute");

         如果要对这个值进行判断就必须使用如下格式:<#if Request["myRequestAttribute"]="edit">
或者 : ${Request["myRequestAttribute"]!"default value"}  



Session:用于获取Session 对象中的attribute对象。

用法参照Request的用法。



Application:用于获取 Application(ServletContext)对象中的attribute对象。

用法参照Request的用法。



RequestParameters:用 于获取Request对象的parameter参数(浏览器端发送的请求数据)

例如:${RequestParameters["myRequestAttribute"]}等同于 request.getParameter("myRequestAttribute");



Parameters:属性获取,依次从 RequestParameters、Request、Session、Application对象中获取对应属性\参数,一旦获取,则不再向下查找。

例如:${Parameters["myRequestAttribute"]}