作者:私语茶馆
1.FreeMarker基本工作原理
Apache FreeMarker:模板引擎,Java库。用于生成text文件(HTML, Email, configuration files, source code, etc),如下图:
图1 FreeMarker的工作原理
Freemarker 生成静态页面,首先需要使用自己定义的模板页面,这个模板页面可以是最最普通的html,也可以是嵌套freemarker中的取值表达式,标签或者自定义标签等等,然后后台读取这个模板页面,解析其中的标签完成相对应的操作,然后采用键值对的方式传递参数替换模板中的的取值表达式,做完之后根据配置的路径生成一个新的html页面, 以达到静态化访问的目的。
2. 利用FreeMarker拆分项目利用Freemarker的模板能力,可以将实际项目中静态网页拆分为一个子模块例如Templates,方便多人同时工作,将Web前台页面设计和模型设计分开,典型的MVC模式。如下图:
其中目录结构如下:
JAVA:源代码包,存放Servlet
Images:Web网站需要的图片
Style:存放CSS层叠样式表(Cascading Style Sheets)
Templates:存放Freemarker的静态Html页面模板,例如index.ftl
WEB-INF: lib库存放freemarker的jar包
Web.xml:Servlet部署脚本
环境要求:Tomcat+freemarker+idea
2.四步完成Freemarker+Servlet样例
步骤1.Idea中创建WebProject, 手工增加Servlet的lib库
步骤2.开发Freemarker的ftl模板
步骤3.开发Servlet
步骤4.发布且运行Servlet
本文重点讲样例代码,其他的网上可以找到相关资料就不在本文重复了。
2.1. 项目运行结果
在浏览器中输入:“http://localhost:8080/JavaEEHelloWorld_war_exploded/hello”