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

freemarker简单应用

    博客分类:
  • Java
阅读更多
一个项目用到freemarker于是在此mark一下,
还是直接上代码。
package com.test.freemarker;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import freemarker.template.Configuration;
import freemarker.template.DefaultObjectWrapper;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import freemarker.template.TemplateExceptionHandler;


public class TestFreeMarker {
public static void main(String []args) throws IOException, TemplateException{
	/**
	 * freemarker 加载文件 
	 */
	  Configuration cfg = new Configuration();  
	  //加载freemarker模板文件  
	  cfg.setDirectoryForTemplateLoading(new File("E:/Java/test/WebRoot/templates"));  
	  //设置对象包装器  
	  cfg.setObjectWrapper(new DefaultObjectWrapper());  
	  //设计异常处理器  
	  cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);  
	  //定义并设置数据  
	  Map<String, Object> data = new HashMap<String, Object>();  
	  data.put("persion", "godbugs");  
	  //获取指定模板文件  
	  Template template = cfg.getTemplate("hello.ftl");  
	  //定义输入文件,默认生成在工程根目录  
	  Writer out = new OutputStreamWriter(new FileOutputStream("E:/Java/test/WebRoot/test.html"),"UTF-8");  
	  //写入目标文件中
	  //写的是freemarker 生成模板
	  List list = new ArrayList();
	  list.add("星期一");
	  list.add("星期二");
	  list.add("星期三");
	  data.put("list", list);
	  data.put("age", 12);
	  template.process(data, out);//写入目标文件
	  System.out.println("success"); 
}
}

模板文件
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>a.html</title>
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
<body>
      这是一个模板文件,欢迎获取${persion} 
  <#list list as t>
   ${t}
  </#list>
<#assign age=age><!--模板变量赋值 -->
<#if (age>60)>老年人
<#elseif (age>40)>中年人
<#elseif (age>20)>青年人
<#else> 少年人
</#if><!--用模板去设 -->
</body>
</html>

freemarker用法还是相当简单的。
1
0
分享到:
评论
1 楼 悲剧了 2011-04-12  
一般就用个list肯定没啥难的

相关推荐

    FreeMarker简单应用

    NULL 博文链接:https://takeme.iteye.com/blog/1716445

    freemarker把jsp静态化简单应用

    freeMarker的简单应用,适合入门人了解,导入myeclipse发布到tomact即可应用

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

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

    freemarker简单示例

     FreeMarker不是一个Web应用框架,而适合作为Web应用框架一个组件  FreeMarker与容器无关,因为它并不知道HTTP或Servlet;FreeMarker同样可以应用于非Web应用程序环境  FreeMarker更适合作为Model2框架(如Struts...

    freemarker的优缺点及简单实例

    freemarker的应用 博文链接:https://hell-liul.iteye.com/blog/487004

    Velocity 和 FreeMarker区别

    Velocity 和 FreeMarker区别 对于大部分的应用来说,使用 FreeMarker 比 Velocity 更简单,因为 Velocity 还必须编写一些自定义的

    freemarker与struts2整合的实例应用

    适合初学freemarker的人参考的一个简单登录代码。主要是实现freemarker与struts2的整合

    FreeMarker_Manual_zh_CN.pdf一个很好用的pdf手册

    本人工作时项目需要用到freemarker,所有公司给了我这个手册让我学习,这本手册我觉得很好,只需要你花一点时间去看,那么你就能掌握freemarker的应用,比较简单易懂。加油吧!

    freemarker生成复杂word

    Word从2003开始支持XML格式,用XML+Freemarder还做就很简单了,大致的思路是先用office2003或者2007编辑好 word的样式,然后另存为xml,将xml翻译为FreeMarker模板,最后用java来解析FreeMarker模板并输出Doc。...

    Java项目:crm客户关系管理系统(java+SpringBoot+ECharts+Freemarker+Layui+mave

    技术选型方面,该项目是一个`SpringBoot`的单体应用,项目使用`SpringBoot2`框架快速开发,数据访问层使用`Mybatis`框架,页面渲染引擎使用`Freemarker`,页面样式使用`Layui`,日志方面选用的是`logback`,统计报表...

    freemarker-pdf-editor:Webapp 编辑 Freemarker 模板,快速转换并预览 HTML 和 PDF 格式的结果

    一个简单的 web 应用程序,用于编辑 FreeMarker FTL 模板,快速转换并预览 HTML 和 PDF 格式的结果。 用 Spring 和 AngularJS 编写。 此工具旨在适应编写在您的应用程序中呈现为 HTML 或 PDF 的 FTL 模板的工作流程...

    FreeMarker-代码生成器.zip

    一套基于FreeMarker技术实现的Java快速开发的代码生成器。 FreeMarker主要两大作用,一种是动态内容静态化。一种是代码生成。...本例的应用是后者,目的是为了节省业务开发时间,对简单的业务代码快速实现。

    Struts+FreeMarker+MySql

    这两天公司叫我做个简单的关于Struts的应用项目,表现层要求用FreeMarker,听说现在提倡运用模 &lt;br&gt;板,JSP将要被这些东西取代,代码中有很多可学的地方,大家下来看看吧,给个评价!!

    simple-i18n-plugin:一个简单的插件,用于使用Freemarker生成html页面和模板的本地化版本

    简单的i18n插件一个简单的插件,用于使用Freemarker生成html页面和模板的本地化版本要使用它,请在本地构建它,然后将其添加到您的应用程序pom中: &lt; plugin&gt; &lt; groupId&gt;...${basedir}/src/main/webapp/pages/&lt;...

    JessMA Java Web 应用开发框架 (v3.2.2-20130815).pdf

    5) 优秀的使用体验:JessMA的设计目标之一是提供良好的开发体验,尽量减少应用程序开发者的工作,API的设计力求简单、完整、明确。同时,JessMA为应用开发提供了大量Util工具,用来处理应用程序开发过程中通常会遇到...

    feemarker入门实例

    简单的freemarker模板渲染案例,分析数据与模型加载应用

    YMP轻量级Java应用开发框架 v2.0.6

    YMP是一个非常简单、易用的一套轻量级JAVA应用开发框架,设计原则主要侧重于简化工作任务、规范开发流程、提高开发效率,让开发工作像搭积木一样轻松是我们一直不懈努力的目标!主要技术特点:采用组件化、模块化...

    基于Java高仿某在线教育网站完整demo

    代码仅供参考学习! 代码仅供参考学习!...MySQL数据库是应用最广泛的开源数据库,上手简单。 项目目前就用到以上技术,后续不排除会加入其他技术,但为了避免项目臃肿,不会让项目变成一个技术的全家桶。

Global site tag (gtag.js) - Google Analytics