freemarker简易教程

来源:互联网 发布:artrage中文版 mac 编辑:程序博客网 时间:2024/06/06 04:12

引进freemarker的包

最近Spring项目的views使用了freemarker这个模板渲染引擎,Spring mvc使用freemarker需要在pom.xml(maven包管理配置)引入一下包:

    <!-- 引入Freemarker开包 -->    <!-- 需要这个包, 因为在配置springmvc freemarker时, 需要用到该包的类 -->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-context-support</artifactId>      <version>4.3.8.RELEASE</version>    </dependency>    <dependency>      <groupId>org.freemarker</groupId>      <artifactId>freemarker</artifactId>      <version>2.3.26-incubating</version>    </dependency>

配置freemarker

为了方便管理,我们把freemarker的配合信息写入application-freemaker.xml里,内容如下:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">    <!-- freemarker的配置 -->    <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">        <!-- 指定FreeMarker模板文件目录 -->        <property name="templateLoaderPath" value="/WEB-INF/views/"/>        <property name="defaultEncoding" value="UTF-8"/>        <property name="freemarkerSettings">            <props>                <prop key="locale">zh_CN</prop>                <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>                <prop key="date_format">yyyy-MM-dd</prop>                <prop key="number_format">#.##</prop>            </props>        </property>    </bean>    <!-- FreeMarker视图解析 在这里配置后缀名ftl和视图解析器。。 -->    <bean id="freeMarkerViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">        <property name="cache" value="true"/>        <property name="suffix" value=".ftl"/>        <property name="contentType" value="text/html;charset=UTF-8"/>        <property name="exposeRequestAttributes" value="true"/>        <property name="requestContextAttribute" value="request"/>    </bean></beans>

简单用法

插入字符串

直接使用${}即可,比如${userName},注意这个使用要保证值必须为String类型,也不能为null。

判断

判断的指令如下:

   <#if option == 0>   <#elseif option == 1>   <#else>   </#if>

注意option必须为boolean,否则会有异常。

列表(list)循环

<#list statusOptions as option>${option}</#list>

富文本

不展示为html,直接渲染为普通字符串:

<#escape x as x?html>   ${value}</#escape>

展示为富文本:

<#escape x as x?html>   <#noescape>${description}</#noescape></#escape>

目前就用到了这些,后续再有其他用法,再进行更新。

原创粉丝点击