页面静态化技术Freemarker技术的介绍及使用实例。

<强>一、FreeMarker简介

<强> 1,动态网页和静态网页差异

在进入主题之前我先介绍一下什么是动态网页,动态网页是指跟静态网页相对应的一种网页编程技术。静态网页,随着HTML代码的生成,页面的内容和显示效果就不会再发生变化(除非你修改页面代码)。而动态网页则不然,页面代码虽然没有发生变化,但是显示的内容却是可以随着时间,环境或者数据库操作的结果而发生相应的变化。简而言之,动态网页是基本的HTML语法规范与java、VB、VC等高级程序设计语言,数据库编程等多种技术的融合,以实现对网站内容和风格的高效、动态和交互式的管理。

通过前面的介绍我们可以得出动态网页和静态网页的优缺点(这里我们只考虑网站性能方面的相关问题,信息安全等多方面问题不做赘述):

<强> 1)静态网页:

,静态网页的内容稳定,页面加载速度快。

b,静态网页的没有数据库支持,在网站制作和维护方面的工作量较大。

c,静态网页的交互性差,有很大的局限性。

<强> 2)动态网页:

,交互性好。

b,动态网页的信息都需要从数据库中读取,每打开一个一面就需要去获取一次数据库,如果访问人数很多,也就会对服务器增加很大的荷载,从而影响这个网站的运行速度。

通过上面的比较我们不难看出,要提升网站的性能,我们只要把动态网页做成静态网页就会在运行速度方面有显著的提升,但是问题出来了,如果将所有页面都做成静态页面显然是不切实际的。有什么办法能让我们的网站即能有动态网页的交互性,又有静态网页的加载速度呢?FreeMarker便能实现这样的需求:实现动态网页静态化。

<强> 2,FreeMarker原理

FreeMarker)是一个基于Java的开发包和类库的一种将模板和数据进行整合并输出文本的通用工具,FreeMarker实现页面静态化的原理是:将页面中所需要的样式写入到FreeMarker模板文件中,然后将页面所需要的数据进行动态绑定并放入到地图中,然后通过FreeMarker的模板解析类流程()方法完成静态页面的生成。其工作原理如图2所示。

, +,,=,



页面静态化技术FreeMarker技术的介绍及使用实例。

上面我们已经说了,,,那么我们就一个个看模板和数据模型是什么样子的,以及最后的输出是什么样子的。
注:这里将省略freemarker的语法,因为很多都是类似EL表达式的,这里只提供几种情况的讲解,其中包括:列表,地图、列表和地图混合
FMDemo。null

页面静态化技术Freemarker技术的介绍及使用实例。