public class FreeMarkerConfigurer extends FreeMarkerConfigurationFactory implements FreeMarkerConfig, InitializingBean, ResourceLoaderAware, ServletContextAware
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"> <property name="templateLoaderPath"><value>/WEB-INF/freemarker/</value></property> </bean>この Bean は、Web MVC に Spring の FreeMarkerView を使用するアプリケーションのアプリケーションコンテキストに含める必要があります。純粋に FreeMarker を構成するために存在します。これは、アプリケーションコンポーネントによって参照されるのではなく、FreeMarkerView によって内部的に参照されるだけです。構成子である Bean の名前に依存せずに、FreeMarkerView によって検出される FreeMarkerConfig を実装します。各 DispatcherServlet は、必要に応じて独自の FreeMarkerConfigurer を定義できます。
「構成」プロパティを介して、FreeMarkerConfigurationFactoryBean によってセットアップされたインスタンスなど、事前構成された FreeMarker 構成インスタンスを参照することもできます。これにより、たとえば Web やメールで使用するために FreeMarker 構成を共有できます。
このコンフィギュレーターは、このパッケージのテンプレートローダーを登録し、次のように "spring.ftl" マクロライブラリ(このパッケージに含まれているため、spring.jar に含まれている)を参照できるようにします。
<#import "/spring.ftl" as spring/> <@spring.bind "person.age"/> age is ${spring.status.value}メモ: Spring の FreeMarker サポートには FreeMarker 2.3 以上が必要です。
FreeMarkerConfigurationFactory.setConfigLocation(org.springframework.core.io.Resource)
, FreeMarkerConfigurationFactory.setFreemarkerSettings(java.util.Properties)
, FreeMarkerConfigurationFactory.setTemplateLoaderPath(java.lang.String)
, setConfiguration(freemarker.template.Configuration)
, FreeMarkerConfigurationFactoryBean
, FreeMarkerView
logger
コンストラクターと説明 |
---|
FreeMarkerConfigurer() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() 事前構成された FreeMarker 構成によってオーバーライドされない場合は、FreeMarkerConfigurationFactory の構成を初期化します。 |
freemarker.template.Configuration | getConfiguration() この Bean によってラップされた構成オブジェクトを返します。 |
freemarker.ext.jsp.TaglibFactory | getTaglibFactory() この Bean によってラップされた TaglibFactory オブジェクトを返します。 |
protected void | postProcessTemplateLoaders(ListSE<freemarker.cache.TemplateLoader> templateLoaders) この実装は、Spring が提供するマクロの追加の ClassTemplateLoader をリストの最後に追加して登録します。 |
void | setConfiguration(freemarker.template.Configuration configuration) FreeMarker Web 構成で使用するように事前構成済みの構成を設定します。 |
void | setServletContext(ServletContextEE servletContext) 指定された ServletContext の TaglibFactory を初期化します。 |
createConfiguration, getAggregateTemplateLoader, getResourceLoader, getTemplateLoaderForPath, isPreferFileSystemAccess, newConfiguration, postProcessConfiguration, setConfigLocation, setDefaultEncoding, setFreemarkerSettings, setFreemarkerVariables, setPostTemplateLoaders, setPreferFileSystemAccess, setPreTemplateLoaders, setResourceLoader, setTemplateLoaderPath, setTemplateLoaderPaths
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
setResourceLoader
public void setConfiguration(freemarker.template.Configuration configuration)
public void setServletContext(ServletContextEE servletContext)
TaglibFactory
を初期化します。ServletContextAware
の setServletContext
servletContext
- このオブジェクトによって使用される ServletContext オブジェクト InitializingBean.afterPropertiesSet()
, ApplicationContextAware.setApplicationContext(org.springframework.context.ApplicationContext)
public void afterPropertiesSet() throws IOExceptionSE, freemarker.template.TemplateException
Spring マクロのロードに使用する ClassTemplateLoader をセットアップします。
InitializingBean
の afterPropertiesSet
IOExceptionSE
freemarker.template.TemplateException
FreeMarkerConfigurationFactory.createConfiguration()
, setConfiguration(freemarker.template.Configuration)
protected void postProcessTemplateLoaders(ListSE<freemarker.cache.TemplateLoader> templateLoaders)
FreeMarkerConfigurationFactory
の postProcessTemplateLoaders
templateLoaders
- サブクラスによって変更される TemplateLoader インスタンスの現在のリスト FreeMarkerConfigurationFactory.createConfiguration()
, FreeMarkerConfigurationFactory.setPostTemplateLoaders(freemarker.cache.TemplateLoader...)
public freemarker.template.Configuration getConfiguration()
FreeMarkerConfig
の getConfiguration
public freemarker.ext.jsp.TaglibFactory getTaglibFactory()
FreeMarkerConfig
の getTaglibFactory