如何使用 spring org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean 为 FreeMarker 模板加载嵌套文件夹
How can i load nested folders for FreeMarker template using spring org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean
您好,我需要为不同的实体创建 ftl,
我想从嵌套文件夹加载 ftl,就像所有真实的 ftl 一样,应该在 A 文件夹中,然后所有宏都在宏文件夹中。
<bean id="freeMarkerConfigurationFactory" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath" value="classpath:freemarker/Account/"/>
<property name="preferFileSystemAccess" value="false"/>
</bean>
这不是 working.Using spring 4
<bean id="freeMarkerConfigurationFactory" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath">
<value> "classpath:freemarker/Account/" , "classpath:freemarker/Macro/"</value>
</property>
<property name="preferFileSystemAccess" value="false"/>
</bean>
同样在调试之后 spring class
public void setTemplateLoaderPath(String templateLoaderPath) {
this.templateLoaderPaths = new String[] {templateLoaderPath};
}
templateLoaderPath 的行为类似于单个字符串,而不是数组。
你需要设置templateLoaderPaths
属性(注意最后的s
),而不是templateLoaderPath
。
我相信 Spring 语法将是(尚未测试...):
<property name="templateLoaderPaths"
values="classpath:freemarker/Account/,classpath:freemarker/Macro/"
/>
或更长的形式:
<property name="templateLoaderPaths">
<array>
<value>classpath:freemarker/Account/</value>
<value>classpath:freemarker/Macro/</value>
</array>
</property>
您好,我需要为不同的实体创建 ftl,
我想从嵌套文件夹加载 ftl,就像所有真实的 ftl 一样,应该在 A 文件夹中,然后所有宏都在宏文件夹中。
<bean id="freeMarkerConfigurationFactory" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath" value="classpath:freemarker/Account/"/>
<property name="preferFileSystemAccess" value="false"/>
</bean>
这不是 working.Using spring 4
<bean id="freeMarkerConfigurationFactory" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath">
<value> "classpath:freemarker/Account/" , "classpath:freemarker/Macro/"</value>
</property>
<property name="preferFileSystemAccess" value="false"/>
</bean>
同样在调试之后 spring class
public void setTemplateLoaderPath(String templateLoaderPath) {
this.templateLoaderPaths = new String[] {templateLoaderPath};
}
templateLoaderPath 的行为类似于单个字符串,而不是数组。
你需要设置templateLoaderPaths
属性(注意最后的s
),而不是templateLoaderPath
。
我相信 Spring 语法将是(尚未测试...):
<property name="templateLoaderPaths"
values="classpath:freemarker/Account/,classpath:freemarker/Macro/"
/>
或更长的形式:
<property name="templateLoaderPaths">
<array>
<value>classpath:freemarker/Account/</value>
<value>classpath:freemarker/Macro/</value>
</array>
</property>