转载:
http://tech.ddvip.com
package 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.Template;
public class TestInclude{
private Configuration cfg;
public Configuration getCfg(){
return cfg;
}
public void init()throws Exception{
cfg=new Configuration();
cfg.setDirectoryForTemplateLoading(new File("bin/freemaker"));
}
public static void main(String[]args)throws Exception{
TestInclude obj=new TestInclude();
obj.init();
Map root=new HashMap();
Templatet=obj.getCfg().getTemplate("TestInclude.ftl");
Writer out=new OutputStreamWriter(new FileOutputStream("TestInclude.html"),"GBK");
t.process(root,out);
System.out.println("Successfull................");
}
}
模板
<html>
<head>
<title>Testpage</title>
</head>
<body>
<h1>Testpage</h1>
<p>Blahblah...
<#include"/TestInclude.copyright.html">
</body>
</html>
输出结果
<html>
<head>
<title>Testpage</title>
</head>
<body>
<h1>Testpage</h1>
<p>Blahblah...
<hr>
<i>Copyright(c)2007-2008<ahref="http://www.java2000.net">JAVA世纪网</a>,<br>
版权所有.</i>
</body>
</html>
分享到:
相关推荐
在这个场景中,"freemarker格式化缩进文本或include指令"主要涉及了两个重要的FreeMarker特性:格式化输出(formatting indentation)和模板包含(template inclusion)。 1. **格式化输出**: FreeMarker默认并不...
5. 引入其他模板:`#include`和`#import`可以引入其他模板,实现代码复用。 三、Freemarker与Java集成 1. Servlet容器集成:在Servlet环境中,通常通过`Template`类加载模板文件,使用`Configuration`配置管理模板...
FreeMarker支持许多高级特性,例如条件语句(`<#if>`、`<#else>`)、循环(`<#list>`)、包含其他模板(`<#include>`)、自定义指令等。同时,SpringMVC中的模型数据可以是复杂的Java对象,FreeMarker可以方便地遍历...
5. **国际化支持**:Freemarker也支持多语言环境,你可以创建不同语言的资源文件,然后在模板中通过`<#assign>`指令进行切换。 6. **性能优化**:Freemarker有缓存机制,能够缓存编译后的模板,提升重复渲染的效率...
Freemarker有许多内置的指令,如`include`用于包含其他模板,`import`用于导入宏库,`list`用于遍历集合等。同时,还可以自定义函数和宏来扩展功能。 10. **模板调试** Freemarker提供了一个调试模式,可以帮助...
5. **FreeMarker语法**: - `${}`:用于输出变量,例如`${user.name}`会输出`user`对象的`name`属性值。 - `<#if>`、`<#else>`、`<#elseif>`:条件语句,用于根据条件展示不同内容。 - `<#foreach>`:循环语句,...
这个"jdk1.8下可以使用的freemarker.jar"文件是专门为Java 8环境优化的Freemarker库,使得开发者能够在Java 8平台上无缝地集成和使用Freemarker进行动态内容渲染。 Freemarker的核心概念是模板(Template),它是一...
1. **基本语法**:Freemarker使用简单的模板语言,主要包括变量表示(${})、控制结构(if/else、foreach)、条件表达式(?)和函数调用(例如,日期和时间的格式化)。 2. **模板设计模式**:如如何定义模板布局,...
9. **模板继承与布局**: Freemarker支持模板继承,通过`<#include>`和`<#assign>`等指令,可以创建基础模板并由子模板进行扩展,实现页面布局的统一。 10. **函数和方法调用**: FTL中可以调用Java方法,这使得模板...
通过阅读《freemarker操作手册》提供的完整教程,你可以系统地学习到以上所有内容,并结合实践,熟练掌握Freemarker的使用技巧。无论是初学者还是经验丰富的开发者,这份手册都是深入理解和应用Freemarker不可或缺的...
5. **国际化(i18n)支持**:FreeMarker支持多语言环境,可以通过`<#t>`标签进行日期和时间的本地化处理,`<#lt>`标签进行文本的本地化。 6. **安全机制**:FreeMarker有防止跨站脚本(XSS)攻击的安全特性,可以...
5. **变量(Variables)**:在模板中,你可以使用`${}`来引用数据模型中的变量,Freemarker会自动寻找并替换对应的值。 6. **注释(Comments)**:Freemarker支持模板内的注释,例如`<!--#-->`和`<#-- -->`。 7. *...
下面我们将深入探讨如何配置Spring以使用Freemarker作为视图解析器,以及如何在前端页面上全面使用Freemarker进行渲染。 首先,我们需要在Spring的配置文件中添加对Freemarker的支持。这通常涉及到以下几个步骤: ...
### Freemarker语法完整版知识点详解 #### A....通过以上详细解释,读者可以更好地理解Freemarker的核心概念、指令用法以及一些常见的技巧和注意事项,从而更高效地使用Freemarker进行模板渲染工作。
10. **与其他技术的集成**:FreeMarker 能很好地与Spring框架、Struts框架等结合使用,提供Web应用的视图层解决方案。同时,它也可以与各种数据源(如数据库、XML文件)交互,获取数据。 综上所述,FreeMarker是一...
- **指令**:Freemarker提供了一系列的内置指令,如`include`用于包含其他模板,`import`导入命名空间,`assign`分配变量等。 - **模板继承**:通过`<#assign>`和`<#macro>`实现模板的复用和扩展,`<#import>`和`...
5. 通用数据模型:FreeMarker 不是直接反射到 Java 对象,Java 对象通过插件式对象封装,以变量方式在模板中显示。 6. 为 Web 准备:在模板语言中内建处理典型 Web 相关任务(如 HTML 转义)的结构。 7. 智能的国际...
FreeMarker是一种模板引擎,用于生成文本输出,使用纯Java编写,特别适合基于MVC模式的应用程序。FreeMarker提供了强大的模板语言,可以生成各种文本,如HTML、XML、RTF、Java源代码等等。FreeMarker也支持插件式...