使用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"]}
- ${Request["a"]}
- ${RequestParameters["a"]}
- ${Session ["a"]}
- ${Application ["a"]}
- ${JspTaglibs ["a"]}
- 注意RequestParameters等内部对象时常不能获得所以要:
- ${RequestParameters?default({})["_errors"]?default("params")}
- ${Request["request"]?default("request")}
- ${Session["session"]?default("session")}
- ${Application["ctx"]?default("ctx")}
- ${RequestParameters?default({})?keys?size}
- ${Request?keys?first}
- Freemarker可以直接取pageContext,requestAttribute,session,application中的数据,就是不能取requestParameter;
相关推荐
在Struts2中,ActionContext不仅仅是获取request和response的工具,它还包含了其他有用的上下文信息,如session、application等。例如,你可以通过ActionContext获取session中的数据: ```java Map, Object> ...
7. **内置对象(Built-in Variables)**:Freemarker提供了一些预定义的对象,如`request`、`session`等,方便在Web环境中使用。 8. **宏(Macros)**:类似于函数,可以封装可重用的模板代码段。 9. **模板继承...
- **内置对象**:如`request`、`session`、`application`等,可以直接在模板中访问HTTP上下文中的对象。 2. **Freemarker进阶** - **模板配置**:通过`freemarker.properties`文件设置Freemarker的配置项,如缓存...
5. **内置对象和指令**:Freemarker提供了一些内置对象,如`request`、`session`、`application`,可以直接在模板中使用,获取HTTP请求的相关信息。同时,有一些内置指令如`url`、`date`,用于处理URL编码和日期格式...
这是因为Freemarker支持Java Bean规范,即使属性未在bean中声明,只要存在对应的getter方法,Freemarker也会尝试通过调用getter来获取值。在这个例子中,`_const_cas_user_.menu`实际上是调用了`menu`的getter方法。...
Freemarker提供了一系列内置对象,如`request`、`session`、`application`等,方便在Web环境中使用。 13. **日期和数字格式化**: 使用`?date`、`?number`进行日期和数字的格式化,如`${date?string("yyyy-MM-dd...
4. **内置对象与函数**:FreeMarker内建了一些对象,如`request`、`session`、`application`,它们提供了对Servlet环境的访问。同时,还有一系列内置函数,如`htmlEscape`用于转义HTML特殊字符,`length`用于获取...
你可以通过`request`, `session`, `application`等作用域获取Web请求中的数据,或者自定义数据模型对象。 3. **控制结构** Freemarker提供了丰富的控制结构,如`<#if>`, `<#else>`, `<#foreach>`, `<#while>`等,...
[scope="{page|request|session|application}"]/> ``` **Freemarker:** ```freemarker ``` 在定义变量方面,Freemarker使用`<#assign>`标签,其语法简单直观。 #### 多重判断 **JSP:** ```jsp ... ......
options:该参数可以省略,指定包含时的选项,包含encoding和parse两个选项,其中encoding指定包含页面时所用的解码集,而parse指定被包含文件是否作为FTL文件来解析,如果省略了parse选项值,则该选项默认是true. ...
spring.freemarker.expose-session-attributes=true spring.freemarker.request-context-attribute=request spring.freemarker.suffix=.ftl ``` 在resources文件夹下新建templates文件夹,并在其中新建index.ftl...
- **内置对象**: FreeMarker提供了一些预定义的对象,如`request`、`session`和`application`,方便访问HTTP请求相关的数据。 - **变量引用**: 可以使用`.`操作符访问对象属性,或者使用`[]`操作符处理索引和键值...
4. **内置对象**:FreeMarker提供了一些内置对象,如request、session、application等,它们提供了对HTTP请求、会话和应用级别的数据访问。 5. **指令**:FreeMarker有丰富的内置指令,如#set、#include、#import、...
- **作用域**: FreeMarker的数据模型由多个作用域组成,如`root`、`request`、`session`、`application`等,每个作用域代表不同的生命周期和可见范围。 - **对象映射**: FreeMarker可以将Java对象映射到模板中,...
- **内置对象和函数**:Freemarker提供了一系列内置对象,如`request`, `session`, `application`(在Web环境下),以及一些内置函数如`date_format`,`list`等。 - **模板错误处理**:如何配置错误页面,处理模板...
- **常用Web对象**:如request、session、application等。 - **值的搜索顺序**:在视图中查找变量时遵循特定的查找顺序。 - **FTL标签**:在模板中使用自定义标签或框架提供的标签。 - **初始化共享变量**:设置...
4. **内置对象和函数**:Freemarker提供了一些内置对象,如`request`、`session`、`application`(在Web环境),以及一些全局函数,如`date`、`number`等,用于日期格式化、数值操作等。 5. **模板配置**:你可以...
- **全局共享变量**:通过`request`, `session`, `application`等作用域设置。 - **直接调用Java对象的方法**:Freemarker可以直接调用Java对象的方法。 - **字符串处理**:Freemarker提供了一些内置的字符串处理...
- **Web常用对象**: 如`request`, `session`, `application`等在FreeMarker中可用。 - **值的搜索顺序**: FreeMarker在模板中寻找变量时会遵循特定的上下文顺序。 - **在模板中使用FTL标签**: 可以在FreeMarker...
- **内置对象**: 如`request`、`session`等,方便在Web环境中使用。 - **自定义指令**: 通过扩展实现自己的模板指令。 - **表达式语言**: 支持丰富的表达式,如算术运算、比较和逻辑运算。 8. **与其他技术的...