我们刚刚开始使用Freemarker作为UI模板引擎,POC结果非常令人满意,看起来我们将开始使用它作为事实上的UI处理框架而不是JSP。
我们在这里看到的真正好处是我们可以在任何地方存储Freemarker模板(例如jar文件,文件系统目录,甚至是数据库!)。
在POC期间,我们没有看到太多的性能问题,但我在想是否可以预编译模板并将其存储在文件系统/数据库中,以便在第一次命中时或者在给定给定的缓存未命中时更快地响应模板。
是否有可能获得已编译模板的二进制结构(很可能是多节点树)并在文件中序列化,反之亦然。
提前致谢。
答案 0 :(得分:1)
不,FreeMarker中没有这样的功能(AST必须可序列化)。除非你有批次模板和/或大模板,否则OTOH首次解析不应该很慢。不慢我的意思是,它与编译JSP-s或Java完全不同,它可以在第一次加载时真正“感觉到”。是否存在实际的性能问题,或者只是预防措施?