Freemarker的初探,有小案例
最近才听说这个freemarker的模板引擎。说是要比jsp好很多。于是上网查了一下,下面摘抄一下大神的总结:
- 不编译成class文件,不占用jvm内存。
- 直接加载,freemarker借助于一个模板文件,然后解析后输出到浏览器。效率更高。(与1道理差不多)
- 运行时嵌入模板(目前没有体会)
- 支持jsp标签,那套强大的标签现在可以拿来用了。不过指令变了
- 空值检测处理写法简单
- 有共享变量
- 支持json
- 不止可以用于web,普通项目也可以用,换句话说不止为了输出html。
一个简单实例来说明
没有任何框架时,纯servlet这样使用。目的也很明确,就是要输出模板。模板路径在init中的configre中设置,为当前目录下面的html目录。名字是template.html,并且传过去一个user的key,在页面上使用${user}
即可获取到。例如getTemplate等方法其实都是固定的。然后最终是process。看案例应该也可以理解的。
基于ssm框架
ssm框架会搭建的同学都会明白,springmvc配置文件中会有一个viewreslover的bean,现在我们不采用那个,我们换成freemarker的。配置如下:
我们写一个测试的controller