java解析jtl_2.7 jtl的使用

java解析jtl_2.7 jtl的使用gt 在 java 程序中 导入 freemarker 的相关 jar 包 org freemarkerfr 首先要创建一个 jtl 模板文件 2 创建 Confuguratio 类对象 并指定一个版本号 通常通过 Confifuretio 类里的常量获取 Configuratio newConfigura Configura

> 在java程序中

– 导入freemarker的相关jar包

org.freemarker

freemarker

1. 首先要创建一个`jtl`模板文件

2. 创建Confuguration类对象,并指定一个版本号,通常通过Confifuretion类里的常量获取。

`Configuration configuration = new Configuration(Configuration.getVersion());`

3. 通过confuguration设置`jtl`文件所在的文件夹地址

`configuration.setDirectoryForTemplateLoading(new File(ftlFilePath));`

4. confuguration设置默认的字符集

` configuration.setDefaultEncoding(“UTF-8”);`

5. 通过confuguration获取一个模板,传入`jtl`文件名称

`Template template = configuration.getTemplate(“fileName.ftl”);`

6. 写入数据通常是map,也可是pojo对象

`Map map = new HashMap();`

7. 创建一个Writer对象

`Writer writer = new FileWriter(“outputFile”);`

8. 通过模板对象process方法处理数据

` template.process(map, writer);`

9. 关闭流

`writer.close();`

* [ ] * 在开发中可以配合InputStreamReader (ByteArrayInputStream)和 OutputStreamWriter(ByteArrayOutputStream)使用。如邮件发送页面。

> `jtl`语句

– 获取map数据

`${key}` key为map的键值

– 获取pojo数据

`${key.field}` key为pojo对象存入map的键值,field为存入pojo的属性

– 循环列表

// key为list存入map的键值,item为自己定义的遍历对象名称

${item.key|filed} // 无论list存入的是pojo对象还是map对象,都是通过`.`的方式获取值,’.’后面可是键值或者属性

${item_index} // 可以获取当前遍历对象的序号(序号从0开始)

#list>

– 判断 `if` `else`语句

// 再标签中写判断语句时不需要写${} 如 value!=2

为true时执行到这里

否则执行这里

#if>

– 时间显示

`${key?date}` // key为传入时间对象的键值,跟date表示只显示日期

`${key?time}` // key为传入时间对象的键值,跟time表示只显示时间,不显示日期

`${key?datetime}` // key为传入时间对象的键值,跟datetime表示显示日期时间

`${key?string(pattern)}` // key为传入时间对象的键值,表示自己定义时间模板如`${key?string(“yyyy年MM月dd日 HH:mm:ss”)}`

– 空值处理

`${key!} `//当获取的值为null时,在其后加入’!’表示默认值为`””`

`${key!defaultValue} ` //当获取的值为null时,可以定义默认的值。如 `${key!”123″} `

` # if> ` // 也可使用`if`语句定义空值

– include

“ // jtlName为包含文件名称,如“

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/199013.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午2:02
下一篇 2026年3月26日 下午2:03


相关推荐

  • “小龙虾宿主机”捧红了Mac mini,但机会是中国芯片产业的

    “小龙虾宿主机”捧红了Mac mini,但机会是中国芯片产业的

    2026年3月16日
    3
  • Nginx报502错误,日志connect() failed (111: Connection refused) while connecting to upstream的个人有效解决方案

    Nginx报502错误,日志connect() failed (111: Connection refused) while connecting to upstream的个人有效解决方案项目是采用前后端分离的模式 其中的路由关系为 NginxA 为对外暴露 host 地址 对于 App 的所有请求都直接通过 server 走到路由挂 NginxB 路由关系为 手机 App 请求 例 www test cn 8072 xy app web index html NginxA NginxBNginxA 路由到 NginxB 的 server 配置为如下路径 server

    2026年3月19日
    2
  • Java引用类型分类以及详解

    Java引用类型分类以及详解Java 引用类型分类以及详解 Java 引用类型概述在 JVM 之中再好的算法 也敌不过一个好烂的程序员 一个程序要想写好有两点 按照开发标准进行 请写有用代码 而对于垃圾的产生与回收的处理之中 要想进行更好的控制 就必须清楚的掌握 Java 中的四种引用方式 强引用 StrongRefere 即使进行了多次的 GC 回收 即使 JVM 真的已经不够用了 即使 JVM 最终不得已抛出了 O

    2026年3月26日
    1
  • Linux内核开发_1_编译LInux内核

    Linux内核开发_1_编译LInux内核1.准备工作1.1学习环境本系列教程使用的环境如下:操作系统版本:Linuxubuntu18.04Linux内核版本:cat/proc/versionLinuxversion4.15.0-20-generic(buildd@lgw01-amd64-039)\(gccversion7.3.0(Ubuntu7.3.0-16ubuntu3))#21-UbuntuSMPTueApr2406:16:15UTC2018…

    2022年7月23日
    11
  • redis主从复制和集群的区别_redis主从复制和redis集群的区别

    redis主从复制和集群的区别_redis主从复制和redis集群的区别Redis主从复制和集群配置    redis主从复制概述1、redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。2、

    2022年8月13日
    9
  • java实现佛洛依德算法

    java实现佛洛依德算法所用到的测试图 packagealgor 弗洛伊德算法思想 Ak i j 意思是 i 点到 j 点经过一系列点 但是点下标最多不超过 k 情况 1 如果 Ak i j 不经过 k 那么 Ak i j Ak 1 i j 情况 2 如果 Ak i j 经过 k 那么 Ak i j Ak 1 i k Ak 1 k j 所以 Ak i j min Ak 1

    2026年3月17日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号