`
向奕昌
  • 浏览: 11438 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

FreeMarker基础设计指南

阅读更多
最近用FreeMarker做页面做了个项目,我也是初次用。


1、快速入门
(1)模板 + 数据模型 = 输出
         FreeMarker基于设计者和程序员是具有不同专业技能的不同个体的观念
         他们是分工劳动的:设计者专注于表示——创建HTML文件、图片、Web页面的其它可视化方面;程序员创建系统,生成设计页面要显示的数据
         经常会遇到的问题是:在Web页面(或其它类型的文档)中显示的信息在设计页面时是无效的,是基于动态数据的
         在这里,你可以在HTML(或其它要输出的文本)中加入一些特定指令,FreeMarker会在输出页面给最终用户时,用适当的数据替代这些代码
         下面是一个例子:
<html>
<head>
  <title>Welcome!</title>
</head>
<body>
  <h1>Welcome ${user}!</h1>
  <p>Our latest product:
  <a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html> 
         这个例子是在简单的HTML中加入了一些由${…}包围的特定代码,这些特定代码是FreeMarker的指令,而包含FreeMarker的指令的文件就称为模板(Template)
         至于user、latestProduct.url和latestProduct.name来自于数据模型(data model)
         数据模型由程序员编程来创建,向模板提供变化的信息,这些信息来自于数据库、文件,甚至于在程序中直接生成
         模板设计者不关心数据从那儿来,只知道使用已经建立的数据模型
         下面是一个可能的数据模型:
(root)
  |
  +- user = "Big Joe"
  |
  +- latestProduct
      |
      +- url = "products/greenmouse.html"
      |
      +- name = "green mouse"
         数据模型类似于计算机的文件系统,latestProduct可以看作是目录,而user、url和name看作是文件,url和name文件位于latestProduct目录中(这只是一个比喻,实际并不存在)
         当FreeMarker将上面的数据模型合并到模板中,就创建了下面的输出:
<html>
<head>
  <title>Welcome!</title>
</head>
<body>
  <h1>Welcome Big Joe!</h1>
  <p>Our latest product:
  <a href="products/greenmouse.html">green mouse</a>!
</body>
</html> 
分享到:
评论

相关推荐

    FreeMarker设计指南.doc

    ### FreeMarker设计指南知识点 #### 一、快速入门 **模板+数据模型=输出** - **设计理念**: FreeMarker的设计理念是区分设计者与程序员的角色,让两者各司其职。设计者专注于页面的表现形式,例如HTML文件、图像...

    FreeMarker 设计指南

    一、FreeMarker基础 1. **模板语言**:FreeMarker使用模板语言,它是一种非编程语言,主要用于动态生成HTML或其他文本格式的文档。模板语言包含控制结构(如条件语句和循环)和变量表达式,它们与后台Java代码交互...

    FreeMarker设计指南+概述(doc)

    **FreeMarker设计指南** 是一份详尽的文档,旨在帮助开发者理解并有效地使用FreeMarker模板语言。这份指南涵盖了FreeMarker的核心概念、语法特性以及最佳实践。以下是一些关键知识点: 1. **基础概念**: - **模板...

    FreeMarker设计指南

    通过阅读"FreeMarker设计指南.doc"文档和解压"freemarker-2.3.15.tar.gz"包中的源码和文档,你可以更深入地理解FreeMarker的工作原理,掌握其配置、使用和优化技巧,从而在实际项目中更好地运用这一强大的模板引擎。

    FreeMarker指南

    ### FreeMarker设计指南详解 #### 一、FreeMarker概述 FreeMarker是一个强大的模板引擎,用于将数据模型与表现层分离,使得设计者可以专注于页面布局和样式,而程序员则负责处理业务逻辑和数据处理。其核心思想是...

    Freemarker模版开发指南

    本指南将深入探讨Freemarker模板的开发,帮助你掌握其主要特性和用法。 1. **模板语法** Freemarker的模板语言基于简单的文本文件,使用特定的指令和表达式。例如,`&lt;#if&gt;`用于条件判断,`&lt;#foreach&gt;`用于循环,`$...

    freemarker生成doc方案

    一、Freemarker基础 Freemarker是一个基于模板的语言,它与编程语言不同,它专注于数据模型和视图的分离。在Java应用中,你可以创建一个Freemarker模板,将数据模型注入其中,然后Freemarker会根据模板和数据生成...

    freemarker 源码、中文API、 freemarker Myeclipse 编辑器

    其次,`freemarker 插件 安装提示.txt`文件很可能是MyEclipse编辑器中安装Freemarker插件的步骤指南。MyEclipse是一款集成开发环境,对于Java开发者来说非常方便。Freemarker插件的安装可以让开发者在IDE内直接编辑...

    freemarker操作手册-完整freemarker教程

    Freemarker是一个强大的模板引擎,常用于Web应用中的视图层开发,特别是在Java环境中,它作为MVC设计模式的一部分,负责生成动态HTML或其他格式的文本。本教程将深入讲解Freemarker的核心概念、语法和实际应用,帮助...

    freemarker 入门指南

    1. **FreeMarker设计指南.chm**:这个文档可能是Freemarker的官方设计指南,包含了详细的设计理念和使用技巧。 2. **freemarker.rar**:这个压缩包可能包含了Freemarker的API文档、示例模板或其他辅助学习材料,...

    freemarker学习资料汇总

    本压缩包集合了丰富的Freemarker学习资源,涵盖从基础到进阶的各种知识点,以下是这些文档中可能包含的详细内容: 1. **Freemarker中文手册.pdf**: 这份手册通常会详细介绍Freemarker的基本概念,如模板语言、...

    freemarker 操作指南(完全版)

    这份"Freemarker操作指南(完全版)"包含了所有关于Freemarker的详细操作文档,是初学者掌握和进阶Freemarker的宝贵资料。 在开始学习之前,我们先了解Freemarker的基本概念。Freemarker是一个模板引擎,它允许...

    struts2和freemarker整合

    1. **基础概念**:解释了FreeMarker模板语言的基本元素,如变量、控制结构(if/else、foreach)、内置函数和方法。 2. **数据模型**:描述如何将Java对象绑定到模板,以及如何访问对象的属性。 3. **模板设计**:...

    Freemarker2.3.16_带简单教程

    通过这些资料,你可以全面了解并掌握Freemarker的使用,从基础语法到高级特性,从而在实际项目中灵活运用。无论是开发Web应用,还是构建复杂的邮件系统,Freemarker都能提供强大而简洁的解决方案。学习并熟练运用...

    Freemarker官方帮助文档

    这份“Freemarker官方帮助文档”提供了全面的指南,帮助用户深入理解和有效地使用这个模板语言。 一、基础概念 1. 模板:Freemarker模板是纯文本文件,包含静态文本和变量(${...})或表达式(${...?...}),它们被...

    Freemarker使用指南

    除了以上基础用法,Freemarker还支持更多的高级特性,如宏定义、指令嵌套、模板继承等,使得模板设计更加灵活。在开发过程中,熟练掌握这些基本语法和指令,能够有效地利用Freemarker构建高效、易维护的动态页面。

    FreeMarker中文手册+开发指南.docx

    手册覆盖了从基础到高级的各个主题,旨在帮助开发者有效地利用FreeMarker进行模板设计。 **1. 什么是FreeMarker?** FreeMarker是一个模板语言,它是独立于编程语言的,也就是说,它不直接与Java或任何其他后端...

Global site tag (gtag.js) - Google Analytics