使用Freemarker实现网页静态化

手把手教你自制Type-C OTG转换器(附电路图及避坑指南) 本文详细指导如何自制Type-C OTG转换器,包括核心电路设计、元器件选型及焊接技巧,特别强调硬件检测电路的关键作用。通过实测数据和避坑指南,帮助开发者解决兼容性问题,实现高效数据传输。 阅读详情

1:Freemarker简介

FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等

这里写图片描述
2:使用步骤

第一步:创建一个Configuration对象,直接new一个对象。构造方法的参数就是freemarker对于的版本号。
第二步:设置模板文件所在的路径。
第三步:设置模板文件使用的字符集。一般就是utf-8.
第四步:加载一个模板,创建一个模板对象。
第五步:创建一个模板使用的数据集,可以是pojo也可以是map。一般是Map。
第六步:创建一个Writer对象,一般创建一FileWriter对象,指定生成的文件名。
第七步:调用模板对象的process方法输出文件。
第八步:关闭流
测试代码
@Test
    public void genFile() throws Exception {
        // 第一步:创建一个Configuration对象,直接new一个对象。构造方法的参数就是freemarker对于的版本号。
        Configuration configuration = new Configuration(Configuration.getVersion());
        // 第二步:设置模板文件所在的路径。
        configuration.setDirectoryForTemplateLoading(new File("D:/web/src/main/webapp/WEB-INF/ftl"));
        // 第三步:设置模板文件使用的字符集。一般就是utf-8.
        configuration.setDefaultEncoding("utf-8");
        // 第四步:加载一个模板,创建一个模板对象。
        Template template = configuration.getTemplate("hello.ftl");
        // 第五步:创建一个模板使用的数据集,可以是pojo也可以是map。一般是Map。
        Map dataModel = new HashMap<>();
        //向数据集中添加数据
        dataModel.put("hello", "this is my first freemarker test.");
        // 第六步:创建一个Writer对象,一般创建一FileWriter对象,指定生成的文件名。
        Writer out = new FileWriter(new File("D:/temp/hello.html"));
        // 第七步:调用模板对象的process方法输出文件。
        template.process(dataModel, out);
        // 第八步:关闭流。
        out.close();
    }

3:使用细节

1:访问map中的key  ${key}
2:访问pojo中的属性  ${key.property}
3:取集合中的数据  
 <#list studentList as student>
   ${student.id}/${studnet.name}
 </#list>
4:取循环中的下标  
<#list studentList as student>
    ${student_index}
</#list>
5:判断
<#if student_index % 2 == 0>
<#else>
</#if>
6:日期类型格式化
当前日期:${date?date}
当前时间:${date?time}
当前日期和时间:${date?datetime}
自定义时间日期:${date?string("yyyyMM/dd HH:mm:ss")}
7:Null值的处理
null值的处理:${myval!"myval为null"}
null值的处理2:
 <#if myval??>
   myval为不为空时
 <#else>
   myval为空时
 </#if>
8:Include标签 <#include “模板名称”>
YOLO11涨点优化:卷积魔改 | 可变形条带卷积(DSCN),魔改轻量DCNv3二次创新 如何跟YOLO11结合:1)和C3k2创新性结合 阅读详情

相关推荐

MATLAB实战:利用扫频数据重构系统伯德图的关键步骤

本文详细介绍了如何利用MATLAB处理扫频数据并重构系统伯德图的完整实战流程。内容涵盖数据导入与清洗、增益与相位的精确计算、频率响应数据对象(frd)的构建、数据平滑与插值处理,以及最终生成专业伯德图并进行关键参数(如相位裕度)标注的方法。文章重点解决了从实测“黑盒子”系统数据出发,获取直观频率响应特性曲线的核心问题,为控制系统分析与设计提供了实用指南。

weixin_29098117的博客 398

使用freemarker实现页面静态化

最近做一个电商网站,首页分类数据太多需要实现静态化,于是google了一下找了一大堆的资料.做了一个例子: 由于这个项目使用了freemarker,所以就用freemarker来实现页面静态化.    以下是我生成静态页最核心的方法,使用freemarker。 Java code ? 1 2 3 4 5 6

github yx9o Apache RocketMQ & ShardingSphere Committer 1941

RabbitMQ的使用(JAVA)

Java快速上手的MQ上线!

.............. 1万+

通过Freemarker实现页面静态化的基本操作

页面静态化页面静态化基本实现是指对一些网页内容更新较少的情况下,可以在用户第一次发送请求时动态获取页面内容,并同时生成html的静态页面,再以后的访问中直接对静态页面进行访问,可以大大加快页面的访问速度,可以通过freemarker与UrlRewriteFilter一起作用实现。UrlRewriteFilter UrlRewriteFilter是一种url重写的拦截器,可以接受你的请求url,并转

lisy_Poto的博客 2914

解锁笔记智能对话:手把手配置 Obsidian Copilot 插件与硅基流动模型

本文详细介绍了如何为Obsidian笔记软件配置Copilot插件,并接入硅基流动AI模型,从而为个人知识库添加智能对话能力。通过手把手教程,指导用户完成插件安装、API Key获取、模型配置及索引构建,最终实现基于个人笔记内容的深度语义问答,提升知识管理效率。

corn8的博客 613

【华为鸿蒙3.0/荣耀安卓12使用VMOS Pro的激活方式 方法二】

关于荣耀手机安卓12如何解除进程限制,这里提供以下教程供小伙伴们参考。

Amy_mumu的博客 13万+

Freemarker网站静态化的实现

--原址:http://www.iteye.com/topic/407756 程序也做了将近4年时间了,从来没有发过什么技术性的文章,今天发一个只在大家一起共同学习进步,如有错误地方请指正。    最近自己做了一个做网络广告的网站叫全方位商机平台的项目,由于网站首页上板块划分很多,不同板块的数据库查询方式不同,首页内容量巨大,如果按照一般的动态jsp页面的话那么数据库查询将是巨大的开销,会导

nauwzj的专栏 667

还在纠结二层交换机和三层交换机的区别?这篇文章帮你讲明白!

你好,这里是网络技术联盟站,我是瑞哥。公众号后台有小伙伴想要写一篇文章具体介绍一下二层交换机和三层交换机,此类的文章,之前写过几篇,今天瑞哥再写一篇,希望对大家有所帮助!

网络技术联盟站 4441

性能优化:用FreeMarker实现页面静态化

  【IT168 技术】众所周知,随着网站的访问量增加,如何给用户以良好的访问体验就显得尤为重要。提升网站性能便成为一些网站面临的一大难题,像hao123这样的导航网站要提升网站的性能只要部署的web服务器数量足够就可以承载超大规模的访问量,如果是一个动态的网站呢?例如像凤凰新闻、网易新闻这样的CMS系统,淘宝、京东这样的大型购物网站由于这些网站都使用到了数据库这也就很难做到单纯的通过...

lgxzzz的博客 1253

勇攀数字高峰

摘要:该题目要求在数字地形图中寻找从最低点到最高点的所有严格递增登山路径。采用DFS深度优先搜索结合回溯算法,通过标记已访问位置并检查高度差限制(0<diff≤maxDiff)来遍历所有可能路径。算法首先确定起点(最低点)和终点(最高点),然后进行DFS搜索,每步移动需满足四个方向的合法移动且高度严格递增。最终输出符合条件的路径总数。提供了C++、Java和Python三种实现方案。

面试高手的博客 622

豆包手机为什么能自己“玩手机”?原理是什么?豆包手机系统运行机制深度解析:读屏、抓取、推理链路全拆解

作为一个每天被前端 Bug 打醒的程序员,我这一阵子在关注“豆包手机”这个关键词,刷到的相关视频简直铺天盖地。朋友们,说句实话,我一开始也只是抱着“看看热闹”的心态,最近一位博主下面的内容,不是“它能做什么”,而是。如果你之前看过很多评测,这篇文章会给你完全不一样的视角。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1015

秒杀功能(5)页面静态化

这篇是讲页面优化技术的第二项:页面静态化、前后端分离。 之前的代码的请求逻辑是: 客户端请求; 服务端的servlet或controller接收请求(后端控制路由与渲染页面,整个项目开发的权重大部分在后端); 调用service,dao层代码完成业务逻辑; 返回页面; 页面展现一些动态的代码; 前后端分离的新的方式是: 浏览器发送请求; 直接到达html页面(前端控制路由与渲染页面,整个项目...

Serena0814的博客 1122

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

怎样使用FreeMarker来实现动态网页静态化

众所周知,随着网站的访问量增加,如何给用户以良好的访问体验就显得尤为重要。提升网站性能便成为一些网站面临的一大难题,像hao123这样的导航网站要提升网站的性能只要部署的web服务器数量足够就可以承载超大规模的访问量,如果是一个动态的网站呢?例如像凤凰新闻、网易新闻这样的CMS系统,淘宝、京东这样的大型购物网站由于这些网站都使用到了数据库这也就很难做到单纯的通过增加web服务器数量的方式来有效的提

以代码重构世界,用热忱点燃未来(第四次工业革命) 5425

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

宜立方商城 第十天 使用freemarker实现网页静态化

宜立方商城第十天 1. 课程计划 第九天: 1、使用freemarker实现网页静态化 2、ActiveMq同步生成静态网页 2. 网页静态化 可以使用Freemarker实现网页静态化。 2.1. 什么是freemarker FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP...

sdaujsj1的博客 240

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

黑马淘淘商城第九天 商品详情页面展示,动态展示 jsp + redis 、使用freemarker实现网页静态化、ActiveMq同步生成静态网页

1. 课程计划 第九天: 1、商品详情页面展示,动态展示 jsp + redis 2、使用freemarker实现网页静态化 3、ActiveMq同步生成静态网页 2. 商品详情页面展示 创建一个商品详情页面展示的工程。是一个表现层工程。 2.1. 工程搭建 Taotao-item-web。打包方式war。可以参考taotao-portal-web 2.1.1. Pom文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="h

qq_17023977的博客 862

使用freemarker实现网页静态化,ActiveMq同步生成静态网页

使用freemarker实现网页静态化ActiveMq同步生成静态网页这是Freemarker需要的模板1.1. 什么是freemarkerFreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。目前企...

看不懂的人的博客 1837

使用Freemarker实现网页静态化 中文乱码

public class TestFreemarker { @Test public void testFreemarkerFirst() throws Exception { // 创建一个Configuration对象 Configuration configuration = new Configuration(Configuration.g...

qq_32534441的博客 314

【转】使用Freemarker实现网页静态化

使用Freemarker实现网页静态化 2017年08月20日 20:45:51 阅读数:1981 1.1. 什么是freemarker FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还...

weixin_30745641的博客 85

Maven工程 使用Freemarker实现网页静态化(真正静态化,不是伪静态)

首先,什么是freemarker呐 FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。 FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。 它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。 目前:我们主要用Freemarker做静态页面或是页面展示 Maven工程添加依赖的fre

蓦然回首 2980

FreeMarker-->实现网页静态化

1.  网页静态化 什么是静态化?         通过一些技术手段(Freemarker/velocity)将动态的页面(jsp,asp.net,php) 转换成静态的页面(html),通过浏览器直接访问静态页面。   为什么要静态化?         通过浏览器直接访问静态的页面,不需要经过程序处理,它的访问速度高。         稳定性好。         更有效的防止安全漏

Janson_lin88的博客 624

10043---使用Freemarker实现网页静态化

原文 什么是freemarker FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。 目前企业中:主要用Freemarker做静态页面或是页面展示 Freemarker

xxxcyzyy的博客 236

利用freemarker 静态化网页

1、介绍-FreeMarker是什么      模板引擎:一种基于模板的、用来生成输出文本的通用工具      基于Java的开发包和类库      2、介绍-FreeMarker能做什么      MVC框架中的View层组件      Html页面静态化     代码生成工具     CMS模板引擎   页面栏目动态定制 3、介绍-为什么要用FreeMa

ajun_studio的专栏 10万+

Freemarker网页静态化

1 课程计划 第九天: 1、使用freemarker实现网页静态化        a )  FreeMarker的使用方法        b )  FreeMarker的模板语法        c )  FreeMarker整合springmvc 2、ActiveMq同步生成静态网页 3、Sso系统说明 2 网页静态化 可以使用Freemarker实现网页静态化。 2.1 什么...

etna_hh的博客 2462
上一篇: 初识ActiveMQ
下一篇: Jsonp的使用
shi-Yjanuary
博客等级 码龄10年 4粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值