JAVA程序通过freemarker生成静态HTML页面
2017-10-22 22:17
851 查看
1、引入包,我引入的是freemarker-2.3.18.jar
2、编写ftl模版文件,模版文件也就是你的动态页面,将比如JSTL标签替换成freemarker的标签,例如:
3、创建生成HTML的工具类:
5、创建ftl模版文件 test.ftl
6、创建测试类,生成html文件
7、执行结果:
创建成功,打开看一下,是不是我们输入的内容:
2、编写ftl模版文件,模版文件也就是你的动态页面,将比如JSTL标签替换成freemarker的标签,例如:
<c:forEach items="${articleList}" var="list"> ${list.title} </c:forEach> 使用freemarker后,要改为: <#list articleList as list> ${list.title} </#list> 注意一点,如果你的数据为数字格式,且长度超过三位,比如1000,freemarker会将其变为1,000,要使用?c将符号清除, 如:${number?c} freemarker接收的参数是Map<String,Object>类型的。
3、创建生成HTML的工具类:
public class CreateHtmlUtils { /** * 通过freemarker生成静态HTML页面 * @param ftlName 模版名称 * @param targetFileName 模版生成后的文件名 * @param map freemarker生成的数据都存储在MAP中, * @创建时间:2017年10月22日21:41:06 */ public static void createHtml(String templateName,String targetFileName,Map<String, Object> map) throws Exception{ //创建fm的配置 Configuration config = new Configuration(); //指定默认编码格式 config.setDefaultEncoding("UTF-8"); //设置模版文件的路径 config.setClassForTemplateLoading(CreateHtmlUtils.class, "/com/test/shop/ftl"); //获得模版包 Template template = config.getTemplate(templateName); //从参数文件中获取指定输出路径 ,路径示例:C:/Workspace/shop-test/src/main/webapp/html String path = PropUtils.readKey("create_html_path"); //定义输出流,注意必须指定编码 Writer writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(path+"/"+targetFileName)),"UTF-8")); //生成模版 template.process(map, writer); } }
5、创建ftl模版文件 test.ftl
<html> <body> <h2>${hello}</h2> </body> </html>
6、创建测试类,生成html文件
Hello World! @Test public void testCreateHtml() throws Exception{ Map<String, Object> map = new HashMap<String, Object>(); map.put("hello", "Hello World!"); CreateHtmlUtils.createHtml("test.ftl","test.html" , map); }
7、执行结果:
创建成功,打开看一下,是不是我们输入的内容:
相关文章推荐
- java使用freemarker生成静态html页面,基于中文API(简单版)
- 利用freemarker、java生成html静态页面
- Java生成静态HTML页面
- 利用Freemarker生成html静态页面,也可利用模版功能生成不同格式的文件
- java 生成静态页面——Freemarker实例教程
- Spring Boot使用freemarker并且生成静态html页面
- php动态网页实现页面静态化 通过在初次被访问时生成html文件保存起来,下次该PHP程序被访问时就直接找到以前被访问过的html页面
- java 生成静态页面——Freemarker实例教程
- java 生成静态页面——Freemarker实例教程
- 【转帖】利用Java生成静态HTML页面
- 通过模板生成静态html页面示例
- Java语言SpringMvc整合FreeMarker静态页面生成
- springboot整合freemarker生成静态HTML页面
- 把php生成静态(html)页面程序代码
- java 生成静态页面——Freemarker实例教程
- Java生成静态HTML页面
- Freemarker生成HTML静态页面
- php动态网页实现页面静态化 通过在初次被访问时生成html文件保存起来,下次该PHP程序被访问时就直接找到以前被访问过的html页面
- php动态网页实现页面静态化 通过在初次被访问时生成html文件保存起来,下次该PHP程序被访问时就直接找到以前被访问过的html页面
- php动态网页实现页面静态化 通过在初次被访问时生成html文件保存起来,下次该PHP程序被访问时就直接找到以前被访问过的html页面