spring整合velocity和freemaker

spring整合velocity和freemaker

maven 部分pom文件

<!--  velocity jar-->

  <dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>


<!--  freemakerjar-->

<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.20</version>
</dependency>



velocity 使用

1.bean xml配置

<bean id="velocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
    <property name="VelocityProperties">
        
        <value>
            
            resource.loader=class
            class.resource.loader.class=org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
        </value>
    </property>
</bean>

2.把bean注入需要使用的地方,如

String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, "v.vm","utf-8", m);

"v.vm" :模板放在classpath目錄

m:map數據模型




freemarker使用

1.bean xml配置

<bean id="freeMarkerConfigurer" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  

property name="templateLoaderPath" value="classpath:mailtemplates"/><!--指定模板文件目錄-->   

<property name="freemarkerSettings"><!-- 設置FreeMarker環境屬性-->   

 <props>  

<prop key="template_update_delay">1800</prop><!--刷新模板的週期,單位爲秒-->   

 <prop key="default_encoding">UTF-8</prop><!--模板的編碼格式 -->  

 <prop key="locale">zh_CN</prop><!-- 本地化設置-->  

 </props>  

</property>  

</bean>  


2.把bean注入需要使用的地方,如 

Template tpl=freeMarkerConfigurer.getConfiguration().getTemplate(templateName);   htmlText=FreeMarkerTemplateUtils.processTemplateIntoString(tpl,root);   



 

發佈了85 篇原創文章 · 獲贊 16 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章