第一步
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");
}
}
第二步
在webRoot下建立freemarker文件夹
在文件夹中建立test.ftl文件代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!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">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
The first test: ${persion}
</body>
</html>
第三步
运行代码,你就会在你的WebRoot目录下出现test.html文件
分享到:
相关推荐
通过以上步骤,你就可以在MyEclipse中使用FreeMarker实现JSP页面的静态化。记住,良好的分层设计和模板使用习惯能显著提高代码质量,使项目更加易于维护和扩展。继续深入学习FreeMarker的高级特性,你将能够更高效地...
本项目利用了`httpclient`与`freemarker`这两个工具来实现静态化的分页功能。下面将详细阐述这两个工具以及它们在静态化分页中的应用。 首先,`httpclient`是Apache的一个开源HTTP客户端库,它提供了丰富的API,...
Freemarker是一个强大的模板...以上就是基于Freemarker的网站静态化实例源码的主要技术点和实现流程。通过学习和实践这个案例,开发者可以深入理解如何在实际项目中运用Freemarker进行静态化,提升网站性能和用户体验。
在登录成功页面的实现中,我们利用Freemarker的特性来实现静态化。首先,创建一个名为`loginSuccess.ftl`的Freemarker模板,其中包含登录成功后要显示的信息。例如: ```html 登录成功 ${username},欢迎登录...
在网站静态化的过程中,Freemarker扮演着关键角色。通过将动态数据注入到预定义的模板中,它能够生成HTML或其他静态格式的文件,从而极大地提高了网站的访问速度,减轻了服务器的负担。 在网站静态化时,Freemarker...
【SpringBoot2 整合FreeMarker模板,完成页面静态化处理】 在Web开发中,页面静态化是一种提高网站性能和用户体验的技术。它涉及到将原本动态生成的页面转换为静态HTML文件,减少对服务器的依赖,加快页面加载速度...
在Web开发中,首页静态化是常见的性能优化手段。 首先,我们需要了解动态首页和静态首页的区别。动态首页是由服务器端的脚本(如PHP、JSP或ASP.NET)实时生成的,每次请求都会根据数据库中的数据动态生成页面内容。...
Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化,以后直接调用即可,无需修改任何源代码,改压缩文件包括 1、工具类; 2、源码(含jar包); 3、mysql数据库可执行文件; 4、struts2集成...
本示例项目是在Eclipse环境中创建的一个工程,目的是演示如何使用Freemarker来生成静态HTML页面。 在了解这个项目之前,首先需要知道什么是Freemarker。Freemarker是一个开源的Java库,它允许开发者通过定义模板(....
第四步,实现静态化逻辑。在处理用户请求后,我们可以选择将生成的HTML内容保存为静态文件,例如在服务器的指定目录下。这个过程可以通过覆写OutputStream的write方法,将生成的HTML字符串写入文件完成。 第五步,...
本示例主要探讨如何使用Freemarker实现页面静态化。 页面静态化分为两种类型:伪静态和全静态化。伪静态是将动态URL转换为静态化的URL形式,但实际请求仍然是动态处理;全静态化则是将动态内容转化为独立的HTML文件...
总结,使用Freemarker实现Excel导出功能,主要是通过模板语言定义Excel的结构,结合数据模型生成内容,再借助像Apache POI这样的库进行转换。这种方式既灵活又高效,尤其适合处理大量结构化数据的导出需求。在实际...
- **URLRewrite实现URL伪静态化**:通过URLRewrite工具,可以改变URL的展示形式,使其看起来像静态页面,但实际仍由动态页面处理。这种方法并不真正生成静态文件,但在用户看来,URL更简洁,更像静态页面。 4. **...
然后在FreeMarker模板中引用这些静态资源,使用FTL语法将动态数据与布局结合。Spring MVC控制器接收请求,处理业务逻辑,构建数据模型,最后将模型传递给FreeMarker模板进行渲染。 7. **最佳实践**:为了提高效率和...
这通常通过在Action中触发静态化逻辑,将Freemarker渲染后的HTML保存到磁盘,然后直接返回这些静态页面。 9. **错误和异常处理**:Struts2和Freemarker都有自己的错误处理机制。当模板或Action执行出错时,可以通过...
- **Redis/Cache**:缓存技术可以辅助实现静态化,将动态内容缓存为HTML,减少数据库查询。 在进行页面静态化时,需要注意以下问题: 1. **SEO优化**:静态HTML有利于搜索引擎爬虫抓取,提高搜索排名。 2. **版本...
在动态页面静态化中,Freemarker可以用来生成静态HTML文件,模板中填入数据模型后,静态页面即可自动生成。 3. **URLRewrite**: URLRewrite是一个常用的Apache服务器模块,它可以实现URL重写功能。在静态化过程中...
- **PageCache**:一些Web框架如Spring MVC提供了内置的缓存机制,可以用于实现页面静态化。 - **Nginx** 或 **Apache** 的URL重写功能:可以通过配置规则,将动态请求重定向到对应的静态HTML文件。 在进行页面静态...
4. **实现过程**:在Struts2中,可以通过自定义Result类型来实现静态化。这个Result类型会在Action处理完请求后,将生成的FreeMarker模板内容写入到一个静态HTML文件中。同时,需要设置适当的缓存策略,例如根据内容...
在IT行业中,利用Freemarker实现代码生成器是一种高效的方法,可以自动化创建常见的代码结构,减少手动编写重复性代码的工作量。下面将详细介绍如何使用Freemarker来创建一个代码生成器。 一、Freemarker基础 1. ...