1.下载freemarker-2.3.19.jar到web项目的lib下。

2.新建freemarker引擎协助类

package com.bxsurvey.sys.process.util;

import java.io.StringWriter;

import java.util.Map;

import freemarker.template.Configuration;

import freemarker.template.Template;

/**

*

* @Title:FreemarkerHelper

* @description:Freemarker引擎协助类

* @date Jul 5, 2013 2:58:29 PM

* @version V1.0

*/

public class FreemarkerHelper {

private static Configuration _tplConfig = new Configuration();

static{

_tplConfig.setClassForTemplateLoading(FreemarkerHelper.class, "/");

}

/**

* 解析ftl

* @param tplName 模板名

* @param encoding 编码

* @param paras 参数

* @return

*/

public String parseTemplate(String tplName, String encoding,

Map<String, Object> paras) {

try {

StringWriter swriter = new StringWriter();

Template mytpl = null;

mytpl = _tplConfig.getTemplate(tplName, encoding);

mytpl.process(paras, swriter);

return swriter.toString();

} catch (Exception e) {

e.printStackTrace();

return e.toString();

}

}

public String parseTemplate(String tplName, Map<String, Object> paras) {

return this.parseTemplate(tplName, "utf-8", paras);

}

}

3.新建autolist.ftl文件。放置在com/bxsurvey/sys/process/tabletemplate/autolist.ftl

<html lang="en">

<head>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

</head>

<body>

${tableName?if_exists?html}

</body>

</html>

4.使用方法,方法listView方法就可以在浏览器中显示ftl页面的内容

@RequestMapping(params = "listView")

public void listView(HttpServletRequest request,HttpServletResponse response) {

//获取列表ftl模板路径

FreemarkerHelper viewEngine = new FreemarkerHelper();

Map<String, Object> paras = new HashMap<String, Object>();

paras.put("tableName","表名");

//组合模板+数据参数,进行页面展现

String html = viewEngine.parseTemplate("/com/bxsurvey/sys/process/tabletemplate/autolist.ftl", paras);

try {

response.setContentType("text/html;charset=utf-8");

response.setHeader("Cache-Control", "no-store");

PrintWriter writer = response.getWriter();

writer.println(html);

writer.flush();

} catch (IOException e) {

e.printStackTrace();

}

}

最简单的freemarker用法实例的更多相关文章

  1. python简单的函数定义和用法实例

    python简单的函数定义和用法实例 这篇文章主要介绍了python简单的函数定义和用法,实例分析了Python自定义函数及其使用方法,具有一定参考借鉴价值,需要的朋友可以参考下 具体分析如下: 这里 ...

  2. php中的curl使用入门教程和常见用法实例

    摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...

  3. 12个 Linux 中 grep 命令的超级用法实例

    12个 Linux 中 grep 命令的超级用法实例 你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请grep来帮你吧. grep是每个Linux发行版都预装的一 ...

  4. python中argparse模块用法实例详解

    python中argparse模块用法实例详解 这篇文章主要介绍了python中argparse模块用法,以实例形式较为详细的分析了argparse模块解析命令行参数的使用技巧,需要的朋友可以参考下 ...

  5. Jackson的用法实例分析

    这篇文章主要介绍了Jackson的用法实例分析,用于处理Java的json格式数据非常实用,需要的朋友可以参考下 通俗的来说,Jackson是一个 Java 用来处理 JSON 格式数据的类库,其性能 ...

  6. Python实现的选择排序算法原理与用法实例分析

    Python实现的选择排序算法原理与用法实例分析 这篇文章主要介绍了Python实现的选择排序算法,简单描述了选择排序的原理,并结合实例形式分析了Python实现与应用选择排序的具体操作技巧,需要的朋 ...

  7. Python回调函数用法实例

    Python回调函数用法实例 作者:no.body链接:https://www.zhihu.com/question/19801131/answer/27459821 什么是回调函数? 我们绕点远路来 ...

  8. 上传文件及$_FILES的用法实例

    Session变量($_SESSION):�php的SESSION函数产生的数据,都以超全局变量的方式,存放在$_SESSION变量中.1.Session简介SESSION也称为会话期,其是存储在服务 ...

  9. C++语言中cin cin.getline cin.get getline gets getchar 的用法实例

    #include <iostream> #include <string> using namespace std; //关于cin cin.getline cin.get g ...

随机推荐

  1. opencv 图片识别

    # -*- coding: utf-8 -*-"""Created on Fri Nov 22 21:35:12 2019 @author: Administrator& ...

  2. P2002 消息扩散[SCC缩点]

    题目描述 有n个城市,中间有单向道路连接,消息会沿着道路扩散,现在给出n个城市及其之间的道路,问至少需要在几个城市发布消息才能让这所有n个城市都得到消息. 输入格式 第一行两个整数n,m表示n个城市, ...

  3. python_反射——根据字符串获取模块中的属性

    1.获取当前模块中的属性 class Person(object): def __init__(self,name,age): self.name = name self.age = age p = ...

  4. WebForm FindControl的使用方法

    Control.FindControl (String):在当前的命名容器中搜索带指定 id参数的服务器控件. 有点类似javascript中的getElementById(string); 简单的例 ...

  5. 2019牛客暑期多校训练营(第十场)Coffee Chicken——递归

    题意 $S(1) = "COFFEE", S(2)="CHICKEN"$,$S(n) = S(n-2)+S(n-1)$,请输出 $S(n)$ 中从第 $k$ 个 ...

  6. java中日志打印

    目录 一.预先判断日志级别 二.避免无效日志打印 三.区别对待错误日志 四.保证记录完整内容 打印日志,要注意下面4点. 一.预先判断日志级别 对DEBUG.INFO级别的日志,必须使用条件输出或者使 ...

  7. Java链接Redis时出现 “ERR Client sent AUTH, but no password is set”

    Java链接Redis时出现 “ERR Client sent AUTH, but no password is set” 异常的原因及解决办法. [错误提示] redis.clients.jedis ...

  8. hive优化,控制map、reduce数量

    一.调整hive作业中的map数 1.通常情况下,作业会通过input的目录产生一个或者多个map任务.主要的决定因素有: input的文件总个数,input的文件大小,集群设置的文件块大小(目前为1 ...

  9. 彻底搞清楚DOM元素的height,offsetHeight,clientHeight,scrollHeight

    测试用例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  10. P1929 迷之阶梯

    题目描述 在经过地球防卫小队的数学家连续多日的工作后,外星人发的密码终于得以破解.它 告诉我们在地球某一处的古老遗迹中,存在有对抗这次灾难的秘密武器.防卫小队立即赶 到这处遗迹.要进入遗迹,需要通过一 ...