我正在使用spring-mvc和freemarker-2.3.27-incubating.jar
。和视图解析器的bean配置如下...
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/"/>
<property name="freemarkerSettings">
<props>
<prop key="template_exception_handler">rethrow</prop>
<prop key="number_format">0.########</prop>
<prop key="date_format">dd/MM/yyyy</prop>
</props>
</property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="suffix" value=".ftl"/>
<property name="exposeSpringMacroHelpers" value="true"/>
<property name="exposeRequestAttributes" value="true"/>
<property name="exposeSessionAttributes" value="true"/>
<property name="requestContextAttribute" value="rc"/>
</bean>
我在哪里以及如何使用<#ftl output_format="HTML">
或<#ftl output_format="HTML" auto_esc=true>
来启用HTML auto-scape
?
您只需在模板文件开头添加#ftl
标签。但我建议在recognize_standard_file_extensions
属性中将true
设置为freemarkerSettings
,然后使用.ftlh
文件扩展名而不是.ftl
。或者,甚至更好,你在那里设置incompatible_improvements
到2.3.27
,这使recognize_standard_file_extensions
和一些修复。 (最后,至少,如果你因为某种原因需要.ftl
,你也可以在output_format
属性中将HTMLOutputFormat
设置为freemarkerSettings
。)