美文网首页
freemarker最基本操作

freemarker最基本操作

作者: 吐痰高手 | 来源:发表于2017-11-08 22:18 被阅读15次

    1.声明变量

    <#assign a='字符串'/>
    <#assign b=123/>
    

    2.取值

    //基础类型和字符串
    ${变量名}
    #{name}
    
    //实体类中的成员变量
    ${实体类.成员变量名}
    ${user.name}
    
    //为取值设置默认值
    ${变量!默认值}//如果变量不存在,或者为空,则输出默认值
    ${user.name!'隔壁老王'}
    
    //获取日期类型数据
    ${日期类型变量?String('yyyy-MM-dd HH:mm:ss')}//取值同时格式化
    //如果不进行格式化,则会去除1970年到此日期的毫秒数(应该是吧)
    ${date?String('yyyy-MM-dd')}
    !注意! 这个date必须是java.sql.Date类型的变量
    如果使用的是java.util.Date类型的数据,要先转化成java.sql.Date类型
    
    //原样输出,不转移其中的特殊字符内容
    ${变量名?html}
    
    
    
    //列表取值
    ${一个list[下标]}
    

    3.bool型取值

    bool型在输出的时候是不能正常输出true或者false的
    那个是个逻辑值,不是字符串,所以要自己定义输出内容
    
    1.要先在spring中配置
    <property>
        <prop key="boolean_format">yes,no</prop>
    </property>
    
    2.或者
    ${var?string('真的输出值','假的输出值')}
    

    4.spring中的配置

    <bean id="freemarkerConfigasdfsdf" 
    class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
        <property name="templateLoaderPath" value=""/>
        <property name="freemarkerSettings">
            <props>
                <!--  设置标签类型 两种:[] 和 <>. []这种解析貌似快些  -->
                <prop key="tag_syntax">auto_detect</prop>
                <!--  检查模板更新时间间隔,默认5s  -->
                <prop key="template_update_delay">1</prop>
                <prop key="defaultEncoding">UTF-8</prop>
                <prop key="url_escaping_charset">UTF-8</prop>
                <prop key="locale">zh_CN</prop>
                <prop key="boolean_format">yes,false</prop>
                <!--时间格式化-->
                <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
                <prop key="date_format">yyyy-MM-dd</prop>
                <prop key="time_format">HH:mm:ss</prop>
                <prop key="number_format">0.######</prop>
                <!--去掉多余的空格-->
                <prop key="whitespace_stripping">true</prop>
                <prop key="auto_import">/WEB-INF/ftl/spring.ftl as s</prop>
                <prop key="date_format">yyyy-MM-dd</prop>
            </props>
        </property>
        <property>
            <map>
                <entry key="role" value-ref="roleDirectiveModel"/>
            </map>
        </property>
        <!--还有其他配置,我也不知道干嘛的,上网查-->
    

    相关文章

      网友评论

          本文标题:freemarker最基本操作

          本文链接:https://www.haomeiwen.com/subject/rcdumxtx.html