Spring MVC使用FreeMarker调用java静态方法

Spring mvc配置文件如下  

1.配置freemarker的视图,如下  
Java代码   收藏代码
  1. "freemarkerResolver"  
  2.         class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
  3.         "requestContextAttribute" value="ctp" />  
  4.         "cache" value="true" />  
  5.         "prefix" value="/WEB-INF/freemarker" />  
  6.         "suffix" value=".ftl" />  
  7.         "contentType" value="text/html;charset=UTF-8" />  
  8.         "order" value="0" />  
  9.         "attributesMap" ref="freemarkerStaticModels"/>  
  10.       

requestContextAttribute属性一般我们都是通过它获取上下文信息,比如<#global cp="${(ctp.contextPath)!''}">我们可以获取全局变量的项目路径等等信息。attributesMap这个才是我们获取java静态方法的属性配置。 

2.freemarkerStaticModels配置如下:  
Java代码   收藏代码
  1. "freemarkerStaticModelsProps"  
  2.          class="org.springframework.beans.factory.config.PropertiesFactoryBean">  
  3.        "location" value="classpath:javastatic.properties" />  
  4.      
  5.   
  6.    "freemarkerStaticModels"  
  7.          class="org.springrain.frame.util.FreemarkerStaticModels" factory-method="getInstance">  
  8.        "staticModels" ref="freemarkerStaticModelsProps"/>  
  9.      


3.javastatic.properties属性配置文件内容如下:  
Java代码   收藏代码
  1. StringUtils=org.apache.commons.lang3.StringUtils  



4.使用配置文件的如下:  
Java代码   收藏代码
  1. ${StringUtil.replaceAll("${name!''}",";","-")}  

你可能感兴趣的:(freeMarker)