zoukankan      html  css  js  c++  java
  • Java模板引擎之Freemarker

    Freemarker定义: 一款模板引擎
    Freemarker是一个web图层组件不是web框架,解析服务端数据到页面

      小例子:

    <#list 集合 as item> list标签对集合进行遍历
    <li>${item.name}</li>
    <li>item.birthday?string('yyyy-MM-dd')}</li> 日期格式化,"?string"表示调用方法格式化时间
    java中常用的数据模型:

    取值指令:

    对于boolean类型的变量,在页面中显示的是yes,因为显示true会让页面报错。这需要在配置文件中进行转换配置。

    Freemarker支持的是java.sql.Date,可以直接输出,如果使用java.util.Date会报错,
    可以这样处理:1 使用java.sql.Date转换 2 在模板中使用?string('yyyy-MM-dd')进行转换

    ${var!默认值}
    默认值只在null或变量不存在时输出


    定义一个变量:       <#assign var=value>
    
    
    ${var?html}
    对var变量值里的html标签进行转义,并输出富文本
       富文本指html标签和文

    !判断最近变量是否存在。不存在就不输出。可以避免错误信息  例如取自定义变量的值:${user.name!}这样只能判断name是否存在,如果user也不存在的话就会报错,

    但我们可以用()把user.name包起来,${(user.name)!}

    对集合进行遍历:

    对Map进行遍历:

    if语法:

    对myList判断是否为空,如果空的话就不走if内部的这段代码了。下面两个效果一样。

      

     switch语法:

    string 基本操作指令:

    自定义指令:    自定义指令用@,内建指令用#,user 和role是入参,键值对的形式,不用,隔开。result1和result2是出参,用,隔开。

    还要在配置文件里进行配置:

    第三步:实现接口

    freemarker常用内建函数:

     

    
    
     
    
    



  • 相关阅读:
    洛谷P3128 [USACO15DEC]Max Flow P 题解 树上差分(点差分)
    数列分块解决区间更新+区间最值问题
    ThinkPad P1 Gen3 4K 显示器出现间歇闪黑屏情况解决
    Qt自定义弹出式菜单(Qt自定义弹窗)
    软件产品易用性评价评估标准
    vue用echarts实现中国地图和世界地图
    知了业务逻辑梳理
    string.gfind string.gmatch
    无法定位程序输入点在 XXXX上...
    [Lua]c解析lua 嵌套table
  • 原文地址:https://www.cnblogs.com/jiliunyongjin/p/8442771.html
Copyright © 2011-2022 走看看