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>
The first test: ${persion}
</body>
</html>
<%@ 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>
The first test: ${persion}
</body>
</html>
3.建一个类内容下如:
view plaincopy to clipboardprint?
package com.air.freemarker;
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");
}
}
package com.air.freemarker;
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");
}
}
4.简单例子完成
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wu209000/archive/2009/05/28/4221999.aspx
分享到:
相关推荐
在这个“freemarker简单例子”中,我们将深入理解Freemarker的基本概念、配置以及如何在实际项目中使用。 1. **Freemarker基本概念** - **模板(Template)**:Freemarker的核心是模板,它定义了最终输出的静态...
cap_first` 将字符串的第一个字符转换为大写。 - `?lower_case` 转换字符串为小写。 - `?trim` 删除字符串前后的空白字符。 ##### 序列属性 ```plaintext 假设 test 的值为 "Tom&Jerry" --> ${test?size} // 8 ${...
Freemarker则是一个强大的模板引擎,常用于生成HTML或其他文本格式的动态内容。结合这两者,我们可以构建出高效的邮件发送系统。本文将详细探讨如何在Spring框架中整合Freemarker,实现邮件的发送,包括在HTML邮件中...
才看了《spring 3.x》第一章内容,写的一个例子;感觉写得挺经典的。 于是骄傲地分享出来。 除了隐藏jdbc.properties里配置;其余都无保留的分享出来了。这里其实一个关于分库分表的配置文件。 使用技术细节:...
以下是一个简单的FreeMarker生成HTML的例子: ```java Configuration cfg = new Configuration(Configuration.VERSION_2_3_30); cfg.setClassForTemplateLoading(this.getClass(), "/templates"); Template ...
本篇文章将深入讲解如何创建你的第一个FreeMarker "Hello, World!"程序。 首先,我们需要了解FreeMarker的基本概念。FreeMarker是一个模板语言,它的主要任务是根据模板和数据模型生成最终的输出。模板是由开发者...
"content": "这是第一行\n这是第二行\n这是第三行" } ``` 在生成Excel时,Freemarker将根据模板和这个数据对象创建一个带有换行的单元格。 为了将Freemarker模板转换为Excel文件,你需要一个实现此功能的库,如...
在这个例子中,`users`是Java端传递到Freemarker模板的一个list,`user`是循环中的变量,每次迭代时代表`users`列表中的一个元素。`as`关键字用于定义迭代变量。在循环体内,我们可以通过`user`访问当前元素的属性,...
大家常用的基于模板的生成工具,可能包括FreeMarker ,velocity等,语法结构都类似且简单,上手非常快,一个下午足矣。 相比较 FreeMarker 而言,Velocity 更加简单、轻量级,但它的功能却没有 FreeMarker 那么...
在这个"第一个spring例子"中,我们将探讨如何创建一个简单的Spring应用,它包含了client和server两部分,这通常意味着我们将构建一个客户端-服务器架构的应用。为了运行此示例,你需要安装MySQL数据库服务和Apache ...
例如,`animals[0].name`代表的是第一个动物的名字。 #### 二、模板的组成部分 **2.1 Interpolations(插值表达式)** 插值表达式(${...})是Freemarker中用来引用数据模型中数据的一种方式。它们允许你在模板中...
cap_first:使字符串第一个字母大写 lower_case:将字符串转换成小写 upper_case:将字符串转换成大写 trim:去掉字符串前后的空白字符 下面是集合的常用内建函数 size:获取序列中元素的个数 下面是数字值的常用...
现在,我们来逐步创建WebWork的第一个例子: 1. **环境准备**:确保已经安装了JDK和Apache Tomcat服务器,以及WebWork的依赖库(可以通过Maven或Gradle添加到项目中)。 2. **创建Maven/Gradle项目**:建立一个新...
这可以通过调用`new Template(null, new StringReader("模板字符串"), null)`完成,其中第一个参数为模板名称(在这里为null),第二个参数是包含模板内容的`Reader`,第三个参数通常是配置对象(在这里为null)。...
**第一章 程序开发入门** - **1.1 创建配置实例:**介绍了如何初始化FreeMarker配置对象。 - **1.2 创建数据模型:**讲解了如何构建数据模型以供模板使用。 - **1.3 获得模板:**解释了如何加载并准备模板。 - **1.4...
10. **实践应用**: 压缩包中的"freemarker的第一个例子"和"用例子讲解FreeMarker应用—生成Java代码"等内容,将帮助读者通过实际案例掌握Freemarker的使用方法,理解如何在项目中集成和运用Freemarker。 11. **社区...
第一部分 模板开发指南 ................................................................................................. 10 第一章 模板开发入门 ............................................................
在进行FreeMarker的开发指南方面,文档提到5分钟内就能入门,举了如何在springmvc中配置FreeMarker的例子。这包括在web.xml中配置监听器和servlet,以及在dispatcher-servlet.xml中配置FreeMarker的bean,包括...
Java导出Word是Java开发中常见的一项任务,特别是在企业级应用中,经常需要将数据以文档形式导出供用户下载或打印。...但作为初学者,掌握上述基础已经足够启动你的第一个Freemarker Word导出程序。