`
wmch
  • 浏览: 72674 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

第一个简单的freemarker例子

阅读更多

1。首先建一个工程(我建的是Web Project)

2。在WebRoot下建一个文件夹,命名为 freemarker , 在文件夹中建一个test.ftl(模板文件)文件,内容下如:

 <%@ page language="java" pageEncoding="GBK" contentType="text/html;charset=GBK"%>  
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
  <head>      
    <title>My JSP 'index.jsp' starting page</title>  
 <meta http-equiv="pragma" content="no-cache">  
 <meta http-equiv="cache-control" content="no-cache">  
 <meta http-equiv="expires" content="0">      
 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
 <meta http-equiv="description" content="This is my page">  
  </head>  
  <body>  
   freemarkerTEST: ${persion}  
  </body>  
</html> 

3。建一个类内容下如:

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

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

public class Test {

 public static void main(String[] args) throws Exception {
  //模板路径  
  String dir = Test.class.getResource("/").getPath().split("WEB-INF")[0]
    + "freemarker";

  Configuration cfg = new Configuration();

  //加载freemarker模板文件  
  cfg.setDirectoryForTemplateLoading(new File(dir));

  //设置对象包装器  
  cfg.setObjectWrapper(new DefaultObjectWrapper());

  //设计异常处理器  
  cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);

  //定义并设置数据  
  Map<String, String> data = new HashMap<String, String>();
  data.put("persion", "我爸是李刚");

  //获取指定模板文件  
  Template template = cfg.getTemplate("test.ftl");

  //定义输入文件,默认生成在工程根目录  
  Writer out = new OutputStreamWriter(new FileOutputStream("test.html"),
    "GBK");

  //最后开始生成  
  template.process(data, out);

  System.out.println("successful");
 }
}

分享到:
评论

相关推荐

    freemarker简单例子

    在这个“freemarker简单例子”中,我们将深入理解Freemarker的基本概念、配置以及如何在实际项目中使用。 1. **Freemarker基本概念** - **模板(Template)**:Freemarker的核心是模板,它定义了最终输出的静态...

    freemarker使用例子.txt

    cap_first` 将字符串的第一个字符转换为大写。 - `?lower_case` 转换字符串为小写。 - `?trim` 删除字符串前后的空白字符。 ##### 序列属性 ```plaintext 假设 test 的值为 "Tom&Jerry" --&gt; ${test?size} // 8 ${...

    基于spring freemarker jdbctemplate jquery的一个完整的项目例子

    才看了《spring 3.x》第一章内容,写的一个例子;感觉写得挺经典的。 于是骄傲地分享出来。 除了隐藏jdbc.properties里配置;其余都无保留的分享出来了。这里其实一个关于分库分表的配置文件。 使用技术细节:...

    第一个spring例子

    在这个"第一个spring例子"中,我们将探讨如何创建一个简单的Spring应用,它包含了client和server两部分,这通常意味着我们将构建一个客户端-服务器架构的应用。为了运行此示例,你需要安装MySQL数据库服务和Apache ...

    freemarker 例子

     大家常用的基于模板的生成工具,可能包括FreeMarker ,velocity等,语法结构都类似且简单,上手非常快,一个下午足矣。  相比较 FreeMarker 而言,Velocity 更加简单、轻量级,但它的功能却没有 FreeMarker 那么...

    spring整合freemarker发送邮件例子

    Freemarker则是一个强大的模板引擎,常用于生成HTML或其他文本格式的动态内容。结合这两者,我们可以构建出高效的邮件发送系统。本文将详细探讨如何在Spring框架中整合Freemarker,实现邮件的发送,包括在HTML邮件中...

    实用方便freemarker.jar freemarker架包 freemarker生成excel、word、html、xml例子

    以下是一个简单的FreeMarker生成HTML的例子: ```java Configuration cfg = new Configuration(Configuration.VERSION_2_3_30); cfg.setClassForTemplateLoading(this.getClass(), "/templates"); Template ...

    第一个FreeMarker HelloWorld程序

    在这个简单的例子中,我们通过FreeMarker生成了"Hello, World!"的输出。实际上,FreeMarker支持更复杂的逻辑操作,如条件判断(`&lt;#if&gt;`)、循环(`&lt;#foreach&gt;`)、函数调用等,能够满足各种动态生成文本的需求。 ...

    freemarker生成复杂excel,带换行

    "content": "这是第一行\n这是第二行\n这是第三行" } ``` 在生成Excel时,Freemarker将根据模板和这个数据对象创建一个带有换行的单元格。 为了将Freemarker模板转换为Excel文件,你需要一个实现此功能的库,如...

    Freemarker中遍历list集合实例

    在这个例子中,`users`是Java端传递到Freemarker模板的一个list,`user`是循环中的变量,每次迭代时代表`users`列表中的一个元素。`as`关键字用于定义迭代变量。在循环体内,我们可以通过`user`访问当前元素的属性,...

    freemarker_中文参考手册

    例如,`animals[0].name`代表的是第一个动物的名字。 #### 二、模板的组成部分 **2.1 Interpolations(插值表达式)** 插值表达式(${...})是Freemarker中用来引用数据模型中数据的一种方式。它们允许你在模板中...

    webwork第一个例子

    现在,我们来逐步创建WebWork的第一个例子: 1. **环境准备**:确保已经安装了JDK和Apache Tomcat服务器,以及WebWork的依赖库(可以通过Maven或Gradle添加到项目中)。 2. **创建Maven/Gradle项目**:建立一个新...

    freemarker总结

    cap_first:使字符串第一个字母大写 lower_case:将字符串转换成小写 upper_case:将字符串转换成大写 trim:去掉字符串前后的空白字符 下面是集合的常用内建函数 size:获取序列中元素的个数 下面是数字值的常用...

    Freemarker 最简单的例子程序

    这可以通过调用`new Template(null, new StringReader("模板字符串"), null)`完成,其中第一个参数为模板名称(在这里为null),第二个参数是包含模板内容的`Reader`,第三个参数通常是配置对象(在这里为null)。...

    Spring MVC 第一个例子

    Spring MVC 是 Spring 框架的一个重要模块,它为构建基于Java的Web应用程序提供了一个强大的模型-视图-控制器(MVC)架构。Spring MVC 的设计允许开发者将业务逻辑、数据处理和用户界面分离,从而实现更好的可维护性...

    springboot集成mybatis分页,freemark,spring,logback完整小例子

    标题中的“springboot集成mybatis分页,freemark,spring,logback完整小例子”表明这是一个关于Spring Boot项目,其中整合了MyBatis用于数据库操作,FreeMarker作为模板引擎处理视图,以及Spring框架和Logback日志系统...

    FreeMarker 2.3.19 中文手册

    **第一章 程序开发入门** - **1.1 创建配置实例:**介绍了如何初始化FreeMarker配置对象。 - **1.2 创建数据模型:**讲解了如何构建数据模型以供模板使用。 - **1.3 获得模板:**解释了如何加载并准备模板。 - **1.4...

    freemarker学习资料

    10. **实践应用**: 压缩包中的"freemarker的第一个例子"和"用例子讲解FreeMarker应用—生成Java代码"等内容,将帮助读者通过实际案例掌握Freemarker的使用方法,理解如何在项目中集成和运用Freemarker。 11. **社区...

    深入浅出FreeMarker(一)-基础教程.pdf

    最后,文档还将介绍一些常用的FreeMarker资源,如官方文档、社区论坛、第三方教程等,这些资源可以帮助开发者在遇到难题时寻求帮助,也可以了解FreeMarker的最新动态和最佳实践。通过这些资源,开发者可以更深入地...

Global site tag (gtag.js) - Google Analytics