2.0

Page Contents

FreeMarker 2.0 final 于 2002 年 4 月 18 日发布。与先前版本 2.0 RC3 相比,更改很小。

Bugfixes

  • 在处理 null 值时存在一些错误,其中 Lazarus 的功能与 FreeMarker Classic 的功能不同。传统上,在 FreeMarker 中,空值在适当的上下文中被视为等同于空字符串。至此,据我们所知,在这方面与 FreeMarker Classic 具有向后兼容性。

  • Literals 字符串现在可以包含换行符。这是 FreeMarker Classic 的向后兼容性问题,已修复。

更改模板语言

  • 您可以使用myString?web_safe的额外内置函数将字符串转换为其等效的“网络安全”,其中将有问题的字符(例如“ <”)转换为 j。

  • 在显示带有小数部分的数字时,呈现设备现在使用模板语言环境的小数点分隔符,因此,例如,在欧洲大陆,您会看到 1,1,而在美国语言环境中则是 1.1.

API 的更改

  • 现在,TemplateScalarModel界面中的getAsString()方法将java.util.Locale作为参数。在大多数情况下,这是一个供以后使用的钩子。在默认实现SimpleScalar中,此参数未使用。如果您自己实现此接口,则实现可能会忽略该参数。但是,它将对某些实现具有吸引力。

  • FileTemplateCache的构造函数已更改。如果使用文件系统上的绝对目录作为模板的位置,则需要传入java.io.File的实例以指示位置。如果使用带字符串的构造函数,则表示相对于类加载器的 Classpath。

Miscellany

Ant 构建脚本 build.xml 现在包含一个目标,该目标可构建一个包含 Hello,World 和 Guestbook 示例的.war 文件。它构建了一个 fmexamples.war。例如,如果您以现成的配置使用 Tomcat,则将其放在\ <TOMCAT_HOME>/webapps 下,然后使用 http:// localhost:8080/fmexamples/servlet/hello 和 http://localhost:8080/fmexamples/servlet/guestbook 分别用于 Hello,World 和 Guestbook 示例。