一、体验FreeMarker
FreeMarker是一个非常优秀的模板引擎,它能以非常简单的方式来输出数据显示。FreeMarker负责将一个数据模型(通常是一个Map对象)中的数据合并到模板中,从而生成输出。从而可以极好地分离显示逻辑和数据逻辑的设计,允许界面设计者更专注于显示逻辑的设计,而程序员则专注于提供逻辑数据。
二、FreeMarker在java项目中的应用示例
1、從官網下载FreeMarker所依赖的jar包 [http://www.freemarker.org
]
目录:
docs:包含FreeMarker的相关文档,用法和API文档
examples:FreeMarker的各种demo
lib:FreeMarker核心类库
src:各种源文件
2、將jar包導入到classpath中;
3、在Java程序中使用FreeMarker;
模板文件: myFreemarker.ftl
文件內容:
<#-- 简单的FreeMarker模板 -->
${name},你好!${msg}
在項目中新建一個文件夾:templates,將模板文件放進去;
4、Java文件
package com.freenarker;
import java.io.File;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.Map;
import freemarker.template.Configuration;
import freemarker.template.Template;
/**
* @ClassName: FreemarkTest
* @Description: 模板處理類
* @author Liyongbin
* @date 2011-2-15 下午08:40:18
* @version V1.0
*/
public class FreeMarkerTest {
// 负责管理FreeMarker模板文件的Configuration实例
private Configuration cfg;
// 负责初始化Configuration实例
private void init() throws Exception {
// 初始化FreeMarker配置,創建一個Configuration實例
cfg = new Configuration();
// 设置模板文件位置
cfg.setDirectoryForTemplateLoading(new File("templates"));
}
// 负责合并的方法
private void process() throws Exception {
Map<String,String> root = new HashMap<String,String>();
root.put("name", "FreeMarker!");
root.put("msg", "first FreeMarker demo");
// 使用Configuration实例来加载指定模板
Template t = cfg.getTemplate("myFreemarker.ftl");
// 处理合并
t.process(root, new OutputStreamWriter(System.out));
}
public static void main(String[] args) throws Exception {
FreeMarkerTest ft = new FreeMarkerTest();
ft.init();
ft.process();
}
}
5. 運行結果:
FreeMarker!,你好,first FreeMarker demo
分享到:
相关推荐
在软件开发过程中,尤其是企业级应用,大量重复性的代码编写工作是常见的现象,比如创建与数据库表对应的Java实体类、Service接口及实现、Controller以及MyBatis的Mapper和XML配置文件。为了提高开发效率,减少人力...
在实际项目中,可以利用FreeMarker生成DAO、Service、Controller等重复性高的代码,大大减轻了开发负担。 总的来说,“使用FreeMarker生成java代码”这个话题涵盖了模板引擎的基本概念、FreeMarker的语法特性以及...
1. **添加依赖**:在Java项目中,你需要添加Freemarker的Maven或Gradle依赖,具体依赖配置因构建工具而异。 2. **创建配置对象**:`FreemarkerConfig`是配置Freemarker的主要入口,你可以设置模板路径、缓存策略等...
在Java项目中,我们需要添加FreeMarker的依赖库,如Maven中的`<dependency>`标签: ```xml <groupId>org.freemarker <artifactId>freemarker <version>2.3.30 ``` 然后,配置FreeMarker的`Configuration`对象...
要实现这个功能,首先需要在Java项目中添加FreeMarker的依赖。通常,这可以通过Maven或Gradle的配置文件完成,添加对应的依赖项。然后,你需要创建一个HTML模板,这个模板可以包含静态内容和一些特定的FreeMarker...
在Java应用中,开发者通常会创建一个数据模型,然后使用FreeMarker模板来生成最终的输出。模板语言由简单的文本和特定的指令组成,这些指令会被FreeMarker解释并替换为运行时的数据。 二、准备Word模板 在使用...
4. **Java集成**:在Java项目中使用Freemarker通常涉及以下步骤: - 添加Freemarker的依赖库到项目中。 - 创建一个`Configuration`对象,配置Freemarker的行为,如模板加载路径、缓存策略等。 - 加载模板文件,...
Java FreeMarker 模板生成Word动态表格是一种在Java开发中常用的技术,用于生成基于模板的复杂文档,特别是当需要创建包含动态数据的Word表格时。FreeMarker是一个强大的模板引擎,它与Java代码分离,允许开发者使用...
在Java应用中,使用FreeMarker导出Word文档可以提供灵活的文本和数据结合的方式,尤其适用于生成报告、合同等复杂格式的文档。本篇将详细介绍如何使用FreeMarker与Java结合来导出包含多张图片的Word文档。 1. **...
在Java开发中,FreeMarker被广泛应用于生成代码,如本例中提到的“FreeMarker 生成Java、mybatis文件”。这个过程涉及到Java编程、模板语言、以及MyBatis框架的使用。 1. **FreeMarker 模板引擎** FreeMarker 是一...
让我们深入探讨一下Freemarker在Java模板技术中的重要性和相关知识点。 1. **Freemarker的基本概念** - **模板**: 模板是Freemarker的核心,它是HTML或其他文本格式的静态部分,其中包含了一些特殊的Freemarker...
FreeMarker 是一个强大的模板引擎,常用于Java应用中生成HTML、XML等动态内容。它允许开发者使用简单的模板语言(TL)来分离业务逻辑和视图层。本篇将深入探讨如何自定义FreeMarker标签,以扩展其功能并适应特定项目...
FreeMarker是一个强大的、轻量级的模板语言,常用于Java应用中的视图层渲染。 首先,理解FreeMarker的基本概念。FreeMarker是一个基于模板的Java库,它允许开发者将静态模板语言与动态数据结合,生成HTML、XML或...
- 在项目中引入Freemarker库,通常通过Maven或Gradle添加依赖。 - 配置Freemarker,包括设置模板目录、缓存策略、编码等。 3. **创建模板文件** - 模板文件通常以`.ftl`为扩展名,位于项目指定的模板目录下。 -...
首先,我们需要在项目中引入FreeMarker库。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.freemarker <artifactId>freemarker <version>2.3.30 ``` 然后,创建一个FreeMarker...
4. **Java Web项目集成**:在Java Web项目中,Freemarker通常与Servlet容器(如Tomcat)一起工作。服务器端的Java代码负责处理业务逻辑,准备数据模型,然后使用Freemarker将这些数据模型渲染成Word文档。这个过程中...
1. **工具代码**:在Java项目中,我们需要引入FreeMarker库(freemarker.jar)并创建一个FreeMarker配置对象,用来加载模板文件和设置全局变量。以下是一个简单的示例: ```java import freemarker.template....
在这个"freemarker 可运行java 小demo"中,你将找到一个可以直接运行的Java项目,这对于初学者了解和学习Freemarker的用法非常有帮助。 首先,让我们来深入理解一下Freemarker的核心概念。Freemarker是一个基于模板...
FreeMarker是一个强大的、轻量级的模板引擎,广泛应用于Java Web开发中,用于生成动态HTML、XML等格式的输出。Spring MVC框架与FreeMarker的整合,使得开发者能够更方便地在后端逻辑与前端展示之间进行数据绑定和...
FreeMarker的数据模型是由Java对象构成的,这些对象包含了要在模板中展示的数据。开发者可以将这些对象绑定到FreeMarker模板中,通过 `${}` 符号来访问它们。例如,如果你有一个名为`user`的对象,那么`${user.email...