文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

FreeMarker怎么使用

2024-04-02 19:55

关注

这篇文章主要介绍“FreeMarker怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“FreeMarker怎么使用”文章能帮助大家解决问题。

  一、什么是页面静态化

  在访问 新闻、活动商品等详情页面时,路径可以是xx【id】。html,服务器端根据请求 id, 动态生成 html 网页,下次访问数据时,无需再查询数据,直接将 html 静态页面返回 ---- 减 少 数 据 库 交 互 , 提 高 查 询 性 能。

  二、使用技术Freemarker

  在这里由于我是使用Struts2, 默认使用 freemarker 实现 自定义标签模板,项目导入 struts2 就已经导入freemarker jar 包

  2.1:什么是Freemarke

  FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。

  模板文件 + Java 数据对象=====输出 (任何格式文本 )

  Freemarker 模板文件,通常扩展名。ftl (使用。html .jsp 都可以 )

  2.2 安装 freemarker eclipse 编辑插件

  将 “freemarker_eclipseplugin” 复制 eclipse 的 dropins 文件夹 ,重启开发工具

  2.2.1 编辑 freemarker 的模板文件

  通常模板文件 放在 WEB-INF 下 或者 classes 下

  三、Freemarker简单入门

  3.1创建一个简单的Freemarker模版文件

  ${变量} , 需要在程序中指定变量,合并到模板文件 一同输出

  3.3编写一个测试类

  package cn.hj.freemarker;

  import java.io.File;

  import java.io.IOException;

  import java.io.PrintWriter;

  import java.util.HashMap;

  import java.util.Map;

  import org.junit.Test;

  import freemarker.template.Configuration;

  import freemarker.template.Template;

  import freemarker.template.TemplateException;

  public class FreemarkerTest {

  @Test

  public void testOutput() throws IOException, TemplateException {

  // 配置对象, 配置模板位置

  Configuration configuration=new Configuration(

  Configuration.VERSION_2_3_22);

  configuration.setDirectoryForTemplateLoading(new File(

  "src/main/webapp/WEB-INF/templates"));

  // 获取模板对象

  Template template=configuration.getTemplate("hello.ftl");

  // 动态数据对象

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

  paramterMap.put("title", "Freemarker入门");

  paramterMap.put("msg", "你好,这是第一个Freemarker案例!");

  // 合并输出

  template.process(paramterMap, new PrintWriter(System.out));

  }

  }

关于“FreeMarker怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯