`
lvjun106
  • 浏览: 436929 次
  • 性别: Icon_minigender_1
  • 来自: 芜湖
社区版块
存档分类
最新评论

FreeMarker 获取页面appplication、request、session

 
阅读更多

使用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"]}

 

 

  1. FreeMarker 获取页面request、session${Request["a"]}   
  2. ${RequestParameters["a"]}   
  3. ${Session ["a"]}   
  4. ${Application ["a"]}   
  5. ${JspTaglibs ["a"]}   
  6. 注意RequestParameters等内部对象时常不能获得所以要:   
  7. ${RequestParameters?default({})["_errors"]?default("params")}   
  8. ${Request["request"]?default("request")}   
  9. ${Session["session"]?default("session")}   
  10. ${Application["ctx"]?default("ctx")}   
  11. ${RequestParameters?default({})?keys?size}   
  12. ${Request?keys?first}   
  13. Freemarker可以直接取pageContext,requestAttribute,session,application中的数据,就是不能取requestParameter;  
分享到:
评论

相关推荐

    freemarker获取数据

    本篇文章将深入探讨如何在Freemarker中获取数据。 一、Freemarker基础 1. 模板语言:Freemarker使用一种简单的文本模板语言,它不包含任何编程语句,只有控制结构(如`if`、`for`)和变量引用。变量通常以`${}`或`...

    Freemarker分页

    Freemarker分页是Web开发中的一个重要概念,它主要用于在大量数据展示时,将结果集分割成多个小块,每次只加载一部分数据,提高页面加载速度并提升用户体验。在这个例子中,我们看到的是如何在使用Struts2框架的基础...

    可视化div布局 生成freemarker模板

    通过上述知识点的集成,我们可以创建一个用户友好的Web应用,其中页面布局可以通过可视化工具预览和编辑,而动态数据则由FreeMarker模板和Spring MVC框架提供。这种方式既保证了前端设计的灵活性,又确保了后端数据...

    struts1.2+freemarker实现登录成功页面静态化例子

    如果登录成功,将用户信息存入session,并跳转到登录成功页面。 在登录成功页面的实现中,我们利用Freemarker的特性来实现静态化。首先,创建一个名为`loginSuccess.ftl`的Freemarker模板,其中包含登录成功后要...

    Freemarker创建静态页面TOOLS

    创建静态页面工具类,需要Freemarker的支持

    官网FreeMarker API文档[英文]

    对于最新版的FreeMarker,建议查阅官方的最新文档以获取最准确的信息。 总的来说,FreeMarker是一个强大且灵活的模板引擎,通过它,开发者可以将关注点分离到视图和逻辑上,使得代码更易于维护和扩展。学习并掌握...

    Struts2整合Freemarker生成静态页面

    将Struts2与Freemarker结合使用,可以实现视图层的高效渲染,提供更灵活的页面设计。 在Struts2中整合Freemarker,主要涉及以下几个关键知识点: 1. **Freemarker模板语言**:Freemarker使用模板语言,由`&lt;#...&gt;`...

    两种freemarker模板路径设置方法.docx

    在实际应用中,我们可以根据配置获取到Freemarker的`Template`对象,然后处理模型数据并生成字符串,例如: ```java // 使用FreeMarkerConfigurer Template t = freeMarkerConfigurer.getConfiguration()....

    FreeMarker内置函数

    在FreeMarker中,内置函数提供了一套便捷的工具,帮助我们在模板中执行各种操作,例如字符串处理、日期时间格式化等。 1. **字符串操作函数** - `join`: 将数组或列表中的元素连接成一个字符串,通常用于生成CSV...

    freemarker语法完整版

    13. **内置函数**: 包括`length()`(获取列表或字符串长度)、`default()`(提供默认值)、`index_of()`(查找子串位置)等。 14. **数据模型**: Freemarker的数据模型由Java对象构成,模板中的变量来自于这些对象...

    s2sh+freemarker+jquery+jquery-treeview 无限级树形菜单.rar

    总的来说,这个项目结合了多种技术,利用Struts2处理请求,Spring进行依赖管理和事务控制,Hibernate处理数据,Freemarker生成动态页面,jQuery提供前端交互,而jquery-treeview则提供了树形菜单的可视化。...

    教你如何用FreeMarker生成静态页面.doc

    本篇文章将详细讲解如何利用FreeMarker来生成静态页面。 首先,我们需要理解FreeMarker的基本工作原理。在FreeMarker模板文件中,我们可以编写HTML结构,同时嵌入特定的FreeMarker语法,如`&lt;#if&gt;`、`&lt;#foreach&gt;`等...

    FreeMarker页面制作规范

    ### FreeMarker页面制作规范 #### 页面规范的重要性 在软件开发过程中,页面规范的制定与遵循极为关键。良好的页面规范能够确保项目的可控性、统一系统的视觉风格,并有助于整体风格的快速调整,进而提升开发效率...

    Freemarker模版公用方法

    使用Freemarker模版生成不同的静态文件,该工具类使用简单,方法说明:包含所需的参数,可以进行二次封装

    Spring 整合freemarker制作html页面简单demo(附带操作提示).rar

    **Spring 整合 Freemarker 制作 HTML 页面简单 Demo** 在 Web 开发中,Spring 框架与 Freemarker 模板引擎的整合是常见的技术组合,尤其对于初学者而言,掌握这一技能能够帮助快速构建动态网页。本教程将通过一个...

    freemarker+html生成pdf.zip

    它的核心理念是分离内容和表现,使得开发人员能够专注于业务逻辑,而设计师可以专注于页面布局。`Freemarker`模板文件通常以`.ftl`为扩展名,它们包含可替换的占位符,这些占位符在运行时会被实际的数据值替换。 ...

    freemarker 自定义freeMarker标签

    例如,你可以创建一个自定义标签用于处理分页数据,接受页码和每页数量作为参数,然后在后台查询数据库并返回相应的页面内容。 此外,FreeMarker还支持自定义函数,它们类似于JavaScript中的函数,可以接收参数并...

    freemarker的shiro标签

    此外,`&lt;@shiro.principal&gt;`可以获取当前登录用户的主体信息,这在构建个性化界面时非常有用。 3. **匿名访问与登录需求**:Shiro标签还提供了检查用户是否已登录的功能,例如`&lt;@shiro.anonymous&gt;`表示匿名用户可以...

    freemarker的api

    理解和熟练使用它的API,能够帮助我们更好地利用模板引擎,实现高效、灵活的页面渲染。在实际开发中,结合Freemarker提供的文档,可以解决各种复杂场景下的问题,提升项目的开发效率和用户体验。

Global site tag (gtag.js) - Google Analytics