`

freemarker简单的入门例子

    博客分类:
  • java
阅读更多

至于什么是freemarker,百度百科可查到。至于freemarker的褒贬,本人还没入门,无从说起。玩玩而已。。。

随便建立一个XXXX应用程序,导入freemarker的第三方包。下载地址:http://freemarker.sourceforge.net/

建立文件一,代码如下:

Code:
  1. packagecom.zyeeda.www.Test;
  2. importjava.io.BufferedWriter;
  3. importjava.io.File;
  4. importjava.io.FileWriter;
  5. importjava.io.IOException;
  6. importjava.io.Writer;
  7. importjava.util.ArrayList;
  8. importjava.util.HashMap;
  9. importjava.util.List;
  10. importjava.util.Map;
  11. importfreemarker.template.Configuration;
  12. importfreemarker.template.DefaultObjectWrapper;
  13. importfreemarker.template.Template;
  14. publicclassFreeMarkerTest{
  15. publicstaticvoidmain(String[]args)throwsException{
  16. Configurationconfig=newConfiguration();
  17. try{
  18. config.setDirectoryForTemplateLoading(newFile("e://javasrc"));
  19. config.setObjectWrapper(newDefaultObjectWrapper());
  20. //拿到test.ftl的模板(相当于html模板)
  21. Templatetemplate=config.getTemplate("test.ftl","UTF-8");
  22. //创建数据模型
  23. Maproot=newHashMap();
  24. List<User>users=newArrayList<User>();//方式一:List。用于包装用户信息对象列表
  25. Useru1=newUser();
  26. u1.setId("123");
  27. u1.setName("王五");
  28. users.add(u1);
  29. Useru2=newUser();
  30. u2.setId("2345");
  31. u2.setName("张三");
  32. Useru3=newUser();
  33. u3.setId("fgh");
  34. u3.setName("李四");
  35. users.add(u2);
  36. users.add(u3);
  37. root.put("userList",users);//映射root
  38. Mapproduct=newHashMap();//方式二:单独映射键对。映射product
  39. root.put("lastProduct",product);
  40. product.put("url","http://www.google.com");
  41. product.put("name","greenhose");
  42. Mapnb=newHashMap();
  43. nb.put("name","标");
  44. nb.put("add","中昱达");
  45. root.put("mm",nb);
  46. //新建一个文件。
  47. Filefile=newFile("e://javasrc//test.html");
  48. if(!file.exists()){//不存在文件则创建该文件。
  49. //System.out.println("fileexist");
  50. file.createNewFile();
  51. }
  52. //创建该文件的输出字符流。
  53. Writerout=newBufferedWriter(newFileWriter(file));
  54. template.process(root,out);
  55. out.flush();
  56. }catch(IOExceptione){
  57. //TODOAuto-generatedcatchblock
  58. e.printStackTrace();
  59. }
  60. }
  61. }

注释只是个人的理解而已。。。如果错误,请指出。

在相应的位置建立一个模板文件:e://javasrc test.ftl

Code:
  1. <html>
  2. <head>
  3. <title>Welcome!</title>
  4. </head>
  5. <body>
  6. <#listuserListasuser>
  7. <h1>Welcome${user.name}!id:${user.id}</h1><br/>
  8. </#list>
  9. <p>Ourlatestproduct:
  10. <ahref="${lastProduct.url}">${lastProduct.name}</a>!
  11. <p>test1:${mm.name}test2:${mm.add}
  12. </body>
  13. </html>

还在入门的路上。。。

晚上无聊,对模板进行了修改。 然后,输出结果,就是最近经常看的Ext.data.JsonStore格式。

Code:
  1. {userlist:[<#listuserListasuser> #有待完善
  2. {name:${user.name},id:${user.id}}
  3. </#list>],
  4. url:${lastProduct.url},name:${lastProduct.name}}

输出到 test.html

Code:
  1. {userlist:[{name:王五,id:123}{name:张三,id:2345}{name:李四,id:fgh}],url:http://www.google.com,name:greenhose}
分享到:
评论

相关推荐

    FreeMarker 简单的入门小小小小例子

    俗话说万事开头难,这句话对于我们程序员来说非常的适用,刚接触一门新的东西,...FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序

    freemarker入门文档及例子

    1. 用户列表展示:一个简单的例子,展示如何使用Freemarker遍历用户列表并显示用户信息,如用户名、邮箱等。 2. 动态生成邮件:另一个实例可能是创建一个模板,动态地根据用户数据生成个性化的电子邮件内容,如问候...

    基于注解的springmvc 整合freemarker的入门例子

    这是一个基于eclipse+springmvc+freemarker+注解的入门例子,是一个war包,import到eclipse就应该可以直接运行,但是确保maven环境到存在;我做为一个入门者,是参照了...

    JFinal+Maven+FreeMarker入门实例

    在"JFinal+Maven+FreeMarker入门实例"中,我们将看到如何配置和使用这些工具。首先,我们需要在项目根目录下创建一个`pom.xml`文件,这是Maven项目的配置文件。在这里,我们需要列出所有依赖项,包括JFinal和...

    一个意义深刻 FreeMarker 入门例子之HelloWord

    本示例“一个意义深刻的FreeMarker入门例子之HelloWord”旨在帮助初学者理解并掌握FreeMarker的基本用法。 在Java Web开发中,FreeMarker与后端控制器如Servlet或Spring MVC中的Controller协同工作,允许开发者将...

    FreeMarker 快速入门 上手

    ### FreeMarker 快速入门与上手教程 #### 一、FreeMarker 概览 **FreeMarker** 是一款强大的模板引擎,主要用于生成文本输出。它适用于多种用途,如生成 HTML 页面、XML 数据、电子邮件等。FreeMarker 的一大特点...

    FreeMarker入门之一:say hello world

    在这个“FreeMarker入门之一:say hello world”中,我们将探讨如何使用FreeMarker来创建一个简单的“Hello, World!”程序,了解其基本语法和工作原理。 1. **FreeMarker简介** FreeMarker是一个开源项目,由...

    FreeMarker快速入门.doc

    ### FreeMarker 快速入门详解 #### 一、FreeMarker 概述 FreeMarker 是一个用 Java 编写的模板引擎,它支持动态网页的生成,同时也适用于任何纯文本格式的输出生成,例如 XML 和电子邮件等。FreeMarker 的设计初衷...

    Freemarker入门实例

    在上述的Freemarker入门实例中,我们看到一个简单的`product.ftl`模板文件,其中包含HTML结构以及`${...}`包围的Freemarker表达式。这些表达式在运行时会被对应的数据模型中的值替换。例如,`${user}`和`${...

    Servlet + Freemarker 入门练习

    总结来说,"Servlet + Freemarker 入门练习"涉及以下几个关键知识点: 1. **Servlet**:Java 服务器端编程,处理 HTTP 请求,实现业务逻辑。 2. **Freemarker**:模板引擎,分离视图和逻辑,生成动态 HTML。 3. **...

    freemarker入门实例(解决乱码eclipse/java/编码方式UTF-8)

    本实例将引导你入门Freemarker,解决在Eclipse环境下使用Java编译时可能出现的乱码问题,并确保使用UTF-8编码方式进行处理。 **1. Freemarker简介** Freemarker是一个基于模板的开源Java库,它与Spring MVC、Struts...

    freeMarker学习入门

    在这个例子中,`${user}`、`${latestProduct.url}`和`${latestProduct.name}`是FreeMarker指令,它们将被数据模型提供的具体值所替换。数据模型是由程序员创建的,它可以包含来自数据库、文件或者程序内部生成的数据...

    springmvc的入门例子

    这个入门例子是为初学者设计的,旨在帮助他们快速理解和上手Spring MVC。 首先,我们需要理解Spring MVC的基本组件: 1. **DispatcherServlet**:这是Spring MVC的核心组件,作为前端控制器接收所有的HTTP请求,并...

    FreeMarker入门指南API文档(中文版)

    本指南主要针对FreeMarker 2.3.23版本,提供详细的API文档和入门教程。 在开始之前,你需要了解FreeMarker的基本概念:模板(Template)和数据模型(Data Model)。模板是包含静态文本和变量的文件,变量会被数据...

    freemarker入门demo

    本教程将通过一个基础的"freemarker入门demo",帮助你理解Freemarker的工作原理和基本用法。 首先,让我们了解一下Freemarker模板语言(FTL)。FTL是Freemarker Template Language的缩写,它是一种声明式的标记语言...

    freemarker 中文文档-入门简介

    freemarker 中文文档,freemarker入门简介,含几个小实例

    Freemarker2.3.16_带简单教程

    1. **入门指南**:解释如何安装Freemarker,以及在Java项目中集成它的基本步骤。 2. **实例分析**:通过实际示例演示如何创建和使用模板,以及如何与后端数据交互。 3. **性能优化**:介绍如何提高模板的执行效率...

    FreeMarker实例教程,手把手教你FreeMarker的方方面面

    ### FreeMarker实例教程知识点详解 #### 一、FreeMarker简介 **FreeMarker**是一款功能强大的模板引擎,主要用于生成文本输出,如HTML页面、电子邮件、配置文件等。它被广泛应用于Web开发领域,能够帮助开发者轻松...

    freemarker项目(从入门到与struts2结合)

    **入门FreeMarker:** 1. **安装与配置**:FreeMarker是一个轻量级库,可以通过Maven或Gradle等构建工具引入到Java项目中。配置主要涉及设置模板目录和配置文件`freemarker.properties`,其中定义了FreeMarker的行为...

    freemarker 例子

    最近比较折腾,项目里需要用到静态化,于是就抽时间学习了一下。使用main方法执行,对于刚学习的人来说非常合适的例子。

Global site tag (gtag.js) - Google Analytics