Freemarker基本语法

简介: Freemarker基本语法

一、Freemarker取值


1.属性名-取值,可对属性进行计算2,{属性名!默认值} - 使用默认值

3.${属性名?string} - 格式化输出

代码如下:


<#--${属性名}-->
<h1>${title}</h1>
<#--${属性名.子属性}-->
<h2>${user.name}</h2>
<#--${xxx!默认值}设置当xxx为空或者不存在时显示对应的默认值-->
<h2>${user.address!'未登记地址'}</h2>
<#--利用?string()内置函数进行格式化输出-->
<h2>${user.salary?string('¥0.00')}</h2>
<h2>${user.birthday?string('yyyy年MM月dd日')}</h2>


二、Freemarker判断与循环



1.分支判断


<#if 条件1>
条件1成立执行代码
<#elseif 条件2>
条件2成立执行代码
<#elseif 条件3>
条件3成立执行代码
<#else>
</#if>


代码示例如下:


<#if user.salary <= 1000> <#--user == null-->
    <h3>低收入人群需要政策补贴</h3>
<#elseif (user.salary > 1000 && user.salary < 10000)>
    <h3>中等收入人群鼓励创业</h3>
<#else>
    <h3>高收入人群要多做公益</h3>
</#if>
<!-- ??代表属性是否存在,对象存在返回true,不存在返回false -->
<#if manager??>
        manager已存在
    <#else >
        manager不存在
</#if>
<#--freemarker三目运算符-->
${(user.salary<1500)?string("低收入人群" , "高收入人群")}


三、list循环迭代


<#list users as u>

  • image.png{u.name}

  • <ul>
    <#--#list 数据源 as 迭代变量-->
        <#list users as u>
        <li>${u_index + 1}-${u.username}-${u.name}</li>
        </#list>
    </ul>


    四、Include子页面



    通过Include可以把写好的页面引入到当前页面


    五、内置函数



    15616626-99e370718895b236.png


    内置函数



    相关文章
    |
    easyexcel
    【EasyExcel】第二篇:导出excel文件,导出多个sheet工作空间
    【EasyExcel】第二篇:导出excel文件,导出多个sheet工作空间
    |
    Arthas 监控 Java
    Java 诊断利器 Arthas使用
    Java 诊断利器 Arthas使用
    5260 0
    |
    SQL XML Oracle
    达梦(DM)4、SpringBoot集成MyBatisPlus+达梦数据库(DM)
    最近在做一个政府项目,由于项目之前使用的 MySQL 数据库,为了适配国产化,需要将 MySQL 换成 达梦数据库(DM),本次我选择了达梦数据库8(DM8),以下是切换过程
    4604 0
    达梦(DM)4、SpringBoot集成MyBatisPlus+达梦数据库(DM)
    |
    消息中间件 存储 安全
    SpringBoot与RabbitMQ详解与整合
    SpringBoot与RabbitMQ详解与整合
    3196 0
    |
    缓存 自然语言处理 Java
    详解FreeMarker Template:在Spring Boot中实现动态内容生成
    详解FreeMarker Template:在Spring Boot中实现动态内容生成
    2899 13
    |
    Arthas 监控 Java
    Arthas jad(字节码文件反编译成源代码 )
    Arthas jad(字节码文件反编译成源代码 )
    811 13
    |
    消息中间件 JSON Java
    Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
    Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
    36254 1
    |
    Cloud Native Java Nacos
    springcloud/springboot集成NACOS 做注册和配置中心以及nacos源码分析
    通过本文,我们详细介绍了如何在 Spring Cloud 和 Spring Boot 中集成 Nacos 进行服务注册和配置管理,并对 Nacos 的源码进行了初步分析。Nacos 作为一个强大的服务注册和配置管理平台,为微服务架构提供
    5036 14
    |
    监控 Java Nacos
    使用Spring Boot集成Nacos
    通过上述步骤,Spring Boot应用可以成功集成Nacos,利用Nacos的服务发现和配置管理功能来提升微服务架构的灵活性和可维护性。通过这种集成,开发者可以更高效地管理和部署微服务。
    5159 17