博客
关于我
FreeMarker开发总结
阅读量:557 次
发布时间:2019-03-09

本文共 1525 字,大约阅读时间需要 5 分钟。

FreeMarker技术总结

FreeMarker的定义

FreeMarker 是一个基于Java的免费开源模板引擎,专注于文本模板输出,提供丰富的表达式支持和自定义功能。它能够将后端准备好的数据通过模板引擎的表达式在前端页面展示,常用于生成复杂样式的HTML网页或导出Excel文件。

FreeMarker的工作原理

FreeMarker 的工作原理简单明了。它通过模板文件定义数据的呈现方式,将后端数据与模板结合,生成最终的输出文件。用户可以通过定义丰富的表达式来实现对数据的格式化和布局设计。

Spring Boot项目中的FreeMarker配置

在Spring Boot项目中使用FreeMarker进行渲染,需要完成以下几个步骤:

  • 在项目的 pom.xml 中添加FreeMarker的依赖età
  • org.springframework.boot
    spring-boot-starter-freemarker
    1. 在 application.properties 文件中配置FreeMarker的相关设置:
    2. spring.freemarker.cache=falsespring.freemarker.suffix=.ftlspring.freemarker.template-loader-path=classpath:/templatesspring.freemarker.content-type=text/html; charset=utf-8spring.freemarker.settings=number_format=0

      常用FreeMarker方法

      在实际使用过程中,FreeMarker 提供了丰富的表达式和标签,可以帮助开发者高效实现数据的显示和格式化。以下是一些常用的方法示例:

    3. 获取元素值
    4. <#if msg?="">    <# ridiculer_gmtLegend>        ${msg}    
      1. 获取Map中的值
      2. ${map["name"]}
        1. 循环输出List数据
        2. <#if students?exists and students?size gt 0>    <#list students as student>        ${student.name} - ${student.age} - ${student.sex}    
          1. 条件判断
          2. <#if type == 1>    类型:1
            <#elseif type == 2> 类型:2
            <#else> 类型:其它
            1. 获取Session中的值
            2. <#if Session["userId"]?exists>    用户ID:${Session["userId"]}
              1. 格式化时间
              2. // 输出时间格式为:2020-05-09 13:59:32${createTime?string('yyyy-MM-dd hh:mm:ss')}
                1. 导入公共模板
                2. <#include "right.ftl"/>

                  常见问题与注意事项

                3. 空错误处理:FreeMarker 在表达式中遇到空值时会报错,因此在使用时需要先进行空判断。
                4. 缓存问题:默认情况下,FreeMarker 会缓存模板渲染结果,建议在开发环境中关闭缓存。
                5. 数据格式化:需要谨慎处理大数值的格式化,避免出现不可预期的显示结果。
                6. 通过以上方法和配置,可以充分发挥FreeMarker 的强大功能,在项目开发中提高效率和代码质量。

    转载地址:http://btdpz.baihongyu.com/

    你可能感兴趣的文章
    PHP开发遇到错误0001
    查看>>
    php引用及垃圾回收
    查看>>
    php当前时间的集中写法
    查看>>
    php循环比较数组中的值,如何从PHP数组中计算值并在foreach循环中仅显示一次值?...
    查看>>
    php微信 开发笔记,微信WebApp开发总结笔记
    查看>>
    php怎么将对象变成数组,php怎么将对象转换成数组
    查看>>
    PHP性能监控 - 怎么看xhprof报告(二)
    查看>>
    php操作mysql用select_php如何操作mysql获取select 结果
    查看>>
    PHP操作符与控制结构
    查看>>
    php支付宝手机网页支付类实例
    查看>>
    PHP数据访问的多重查询(租房子查询)
    查看>>
    php数组函数分析--array_column
    查看>>
    php数组实现:哈希 +双向链表
    查看>>
    PHP数组排序函数array_multisort()函数详解(二)
    查看>>
    php数组的几个函数和超全局变量
    查看>>
    PHP文件锁
    查看>>
    php文本框输入制定文本,php – 当用户没有向文本框输入任何内容时...
    查看>>
    PHP时间戳和日期相互转换操作总结
    查看>>
    php时间戳知识点,php 时间戳函数总结与示例
    查看>>
    PHP查找数组中最大值与最小值
    查看>>