Freemarker知识概括

Freemarker知识概括简介入门Demo其他数据类型总结简介Freemarke简介:FreeMarker 是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯 Java 编写,FreeMarker 被设计用来生成HTML Web 页面,特别是基于 MVC 模式的应用程序,虽然 FreeMarker 具有一些编程的能力,但通常由 Java程序准备要显示的数据,由FreeMarker 生成页面,通过模板显示准备的数据。FreeMarker 不是一个 Web 应用框架,而适合作为 Web 应用
摘要由CSDN通过智能技术生成

Freemarker知识概括

简介

Freemarke简介:

  • FreeMarker 是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯 Java 编写,FreeMarker 被设计用来生成HTML Web 页面,特别是基于 MVC 模式的应用程序,虽然 FreeMarker 具有一些编程的能力,但通常由 Java程序准备要显示的数据,由FreeMarker 生成页面,通过模板显示准备的数据。在这里插入图片描述
  • FreeMarker 不是一个 Web 应用框架,而适合作为 Web 应用框架一个组件。FreeMarker 与容器无关,因为它并不知道 HTTP 或 Servlet;FreeMarker 同样可以应用于非Web应用程序环境,FreeMarker 更适合作为 Model2 框架(如 Struts)的视图组件,你也可以在模板中使用 JSP标记库。另外,FreeMarker是免费的。
  • 应用场景:
    比较适合运用在访问量大(或页面数据量大),但是数据很少与后台进行交互(即对实时性要求不是很高的)的页面,比如商品网站上的商品详情页等。

入门Demo

前期准备:

  • 要想使用freemarker,首先必须要有freemarker的jar包,这个互联网上随处可以下载,这边就不多说
<dependency>
<groupId>freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.9</version>
</dependency>

入门demo:

  • (1)创建一个testFreemarker类
import java.io.File;
import java.io.FileWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;
import freemarker.template.Configuration;
import freemarker.template.Template;
 
/**
 - @作者:JackHisen(GWD)
 - @项目名:freemarker
 - @时间:2017-7-25 下午2:39:45
 - @version 1.0
 */
public class testFreemarker {
   
	public static void main(String[] args) throws Exception {
   
		String dir="H:\\Java-EE Workspace\\freemarker\\src\\com\\gwd\\freemarker";
		Configuration conf = new Configuration();
		//加载模板文件(模板的路径)
		conf.setDirectoryForTemplateLoading(new File(dir));
		// 加载模板
		Template template = conf.getTemplate("/freemarker-demo.ftl");
		// 定义数据
		
		Map root = new HashMap();
                root.put("world", "Hello World");
		// 定义输出
		Writer out = new FileWriter(dir + "/freemarker.html");
		template.process(root, out);
		System.out.println("转换成功");
		out.flush();
		out.close();
	}
}

项目目录如下,其中freemarker.html文件是运行main函数后自动生成的,freemarker-demo.ftl为模板
在这里插入图片描述

  • (2)freemarker模板中写入内容在这里插入图片描述
  • (3)生成的html页面:在这里插入图片描述

其他数据类型

1.实体bean:

  • (1)创建Person类
public class Person {
   
	private int id;
	private String name;
	public int getId() {
   
		return id;
	}
	public void setId(int id) {
   
		this.id = id;
	}
	public String getName() {
   
		return name;
	}
	public void setName(String name) {
   
		this.name = name;
	}
}
  • (2)testFreemarker
public class testFreemarker {
   
	public static void main(String[] args) throws Exception {
   
		String dir="H:\\Java-EE Workspace\\freemarker\\src\\com\\gwd\\freemarker";
		Configuration conf = new Configuration();
		//加载模板文件(模板的路径)
		conf.setDirectoryForTemplateLoading(new File(dir));
		// 加载模板
		Template template = conf.getTemplate("/freemarker-demo.ftl");
		// 定义数据
		
		Person person=new Person();
		person.setId(1);
		person.setName("小明");
		Map root = new HashMap();
		root.put("person", person);
		// 定义输出
		Writer out = new FileWriter(dir + "/freemarker.html");
		template.process(root, out);
		System.out.println("转换成功");
		out.flush();
		out.close();
	}
}
  • (3)Freemarker模板
${person.id}
${person.name}
  • (4)生成的html页面
    在这里插入图片描述

2.List集合:

  • (1)testFreemarker
public class testFreemarker {
   
	public static void main(String[] args) 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值