java工程中使用freemarker例子
新建java project,引入freemarker.jar, 本工程是用的版本:freemarker-2.3.20 版本
java工程目录如下:
test.ftl文件
HTML代码
name : ${name}
age : ${age}
Java代码
package com.freemarker; import java.io.File;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map; import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException; public class Test {
public static void main(String[] args) throws IOException, TemplateException { //1.创建配置实例Cofiguration
Configuration cfg = new Configuration(); //2.设置模板文件目录
//(1)src目录下的目录(template在src下)
//cfg.setDirectoryForTemplateLoading(new File("src/template"));
//(2)完整路径(template在src下)
//cfg.setDirectoryForTemplateLoading(new File(
// "D:/cpic-env/workspace/javaFreemarker/src/template"));
//cfg.setDirectoryForTemplateLoading(new File("src/template"));
//(3)工程目录下的目录(template/main在工程下)--推荐
cfg.setDirectoryForTemplateLoading(new File("template/main"));
//cfg.setObjectWrapper(new DefaultObjectWrapper());
//获取模板(template)
Template template = cfg.getTemplate("test.ftl");
//建立数据模型(Map)
Map<String, String> root = new HashMap<String, String>();
root.put("name", "cxl");
root.put("age", "25");
//获取输出流(指定到控制台(标准输出))
Writer out = new OutputStreamWriter(System.out);
//StringWriter out = new StringWriter();
//System.out.println(out.toString());
//数据与模板合并(数据+模板=输出)
template.process(root, out);
out.flush();
}
}
运行结果:
java代码
name : cxl
age : 25
java工程中使用freemarker例子的更多相关文章
- Log4j在Java工程中使用方法
Eclipse新建Java工程,工程目录如下 1.下载log4j的Jar包,在Java工程下新建lib文件夹,将jar包拷贝到此文件夹,并将其加入到路径中,即:Jar包上右键——Build Path— ...
- java工程中不能存在多个数据库连接jar包
java工程中不能存在多个数据库连接jar包 比如存在mysql-java-connector.jar的,放入mssqlserver.jar就会产生冲突.只能存在一个类型的jar包.
- 在java工程中导入jar包的注意事项
在java工程中导入jar包后一定要bulid path,不然jar包不可以用.而在java web工程中导入jar包后可以不builld path,但最好builld path.
- java工程中的.classpathaaaaaaaaaaaaaaaa<转载>
第一部分:classpath是系统的环境变量,就是说JVM加载类的时候要按这个路径下去找,当然这个路径下可以有jar包,那么就是jar包里所有的class. eclipse build path是ec ...
- java工程中的.classpath<转载>
第一部分:classpath是系统的环境变量,就是说JVM加载类的时候要按这个路径下去找,当然这个路径下可以有jar包,那么就是jar包里所有的class. eclipse build path是ec ...
- 【技巧】Java工程中的Debug信息分级输出接口
也许本文的标题你们没咋看懂.但是,本文将带大家领略输出调试的威力. 灵感来源 说到灵感,其实是源于笔者在修复服务器的ssh故障时的一个发现. 这个学期初,同袍(容我来一波广告产品页面,同袍官网)原服务 ...
- 【技巧】Java工程中的Debug信息分级输出接口及部署模式
也许本文的标题你们没咋看懂.但是,本文将带大家领略输出调试的威力. 灵感来源 说到灵感,其实是源于笔者在修复服务器的ssh故障时的一个发现. 这个学期初,同袍(容我来一波广告产品页面,同袍官网)原服务 ...
- Eclipse IDE 添加jar包到Java工程中
操作系统:Windows 10 x64 工具1:Eclipse Java EE IDE for Web Developers. Version: Photon Release (4.8.0) 在Pac ...
- Java工程中各种带有O的对象分类笔记
在Java工程里面,我们总会碰到各种不同的带有O的对象, 对于一个小白来说,经常会混淆这些对象的使用场景,所以在这里mark一下,让自己的代码更加规范,但这个也是Java被诟病的地方,不同的业务需要给 ...
随机推荐
- 正则表达式:根据逗号解析CSV并忽略引号内的逗号
需求:解析CSV文件并忽略引号内的逗号 解决方案: public static void main(String[] args) { String s = "a,b,c,\"1,0 ...
- codeforces C. Restore Graph
题意:构造一个有n个顶点,每个点度不超过k,然后给出每一个点到达一个定点的最短距离d数组,然后构造出这样的一个图: 思路:排序之后,有两个距离为0的或者没有直接输出-1,然后用两个游动下表,后面的与前 ...
- Netty4.0学习笔记系列之三:构建简单的http服务(转)
http://blog.csdn.net/u013252773/article/details/21254257 本文主要介绍如何通过Netty构建一个简单的http服务. 想要实现的目的是: 1.C ...
- IntegerCache详解
IntegerCache是Integer的内部类,用来将-128——high之间的对象进行实例化 private static class IntegerCache { static f ...
- C++ Primer 随笔 Chapter 13 复制控制
1.复制控制包含的内容:复制构造函数.赋值操作符.析构函数 2.复制构造函数: a. 定义:只有单个形参,而且该形参是对本类类型的引用,这样的构造函数被成为复制构造函数 b. 适用情况: (1)根据一 ...
- 在线LCA模板
在线LCA 如求A,B两点的LCA,先计算出各个结点的深度d[],然后,通过递推公式求出各个结点的2次方倍的祖先p[],假设d[A] > d[B],则找到d[p[A][i]] == d[B]也就 ...
- Delphi NativeXml读取中文乱码问题解决
NativeXml默认的字符类型为Utf8String,有时在读取中文时还是会出现乱码问题,在329版本中提供一种类型转换函数sdUtf8ToWide(),我们可以这样sdUtf8ToWide(AXm ...
- a为整型数组,&a+1的含义
#include <stdio.h> int main() { int a[10]; printf("a的值为:\t%d\n",a); printf("&am ...
- 【模拟赛】BYVoid魔兽世界模拟赛 解题报告
题目名称(点击进入相关题解) 血色先锋军 灵魂分流药剂 地铁重组 埃雷萨拉斯寻宝 源文件名(.c/.cpp/.pas) scarlet soultap subway eldrethalas 输入文件名 ...
- tcp dump 截取http
监听命令 sudo tcpdump -w mm.txt -s 0 -A -v tcp dst port 8080 -w mm.txt :把记录下来的数据已二进制格式存储在mm.txt文件内 -w ...