java解析jtl_2.7 jtl的使用
> ## 在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为包含文件名称,如``
java解析jtl_2.7 jtl的使用相关推荐
- IDEA Java解析GeoJson.json文件
IDEA Java解析GeoJson.json文件 一.遇到的问题 1. 无法导入成功 2. org.geotools.StyleFactory is not an ImageIO SPI class ...
- easyexcel生成excel_阿里JAVA解析Excel工具easyexcel
java解析.生成Excel比较有名的框架有Apache poi.jxl.但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有 ...
- java图书分析echarts_Echarts后台Java解析
Echarts 后台 Java 解析 一.引入 Echarts 的封装类 1 .基于 maven 架构的 com.github.abel533 ECharts 2.2.7 com.google.cod ...
- java 解析 csv 文件
文章分类:JavaEye 一.貌似有bug,不行用 二.或 三. 的方法 Java代码 import java.io.BufferedReader; import java.io.FileInpu ...
- 用正则表达式和java解析csv文件
用正则表达式和java解析csv文件 作者:弹着钢琴设计 来源:博客园 发布时间:2009-06-15 18:31 阅读:337 次 原文链接 [收藏] 在解析csv文件之前,先来看看 ...
- 详解Java解析XML的四种方法
http://developer.51cto.com 2009-03-31 13:12 cnlw1985 javaeye 我要评论(8) XML现在已经成为一种通用的数据交换格式,平台的无关性 ...
- java解析xml的三种方法
java解析XML的三种方法 1.SAX事件解析 package com.wzh.sax;import org.xml.sax.Attributes; import org.xml.sax.SAXEx ...
- Java解析HTML
使用Java解析HTML很简单,使用jsoup.jar来解析,使用起来和jquery差不多 下面是两个例子 1.解析web页面 1 import org.jsoup.Connection; 2 imp ...
- xml教程之java解析xml文档
1.java解析xml文件介绍 XML解析方式分为两种:DOM方式和SAX方式 DOM:Document Object Model,文档对象模型.这种方式是W3C推荐的处理XML的一种方式. SAX: ...
最新文章
- 时问轴php,php-发布到时间轴-过去的日期
- Linux虚拟机安装及与宿主机相互通信
- python 时间序列预测_使用Python进行动手时间序列预测
- 什么是系统架构?系统架构的特点分析!
- js函数传参,如何在JavaScript函数中不传递先前参数的情况下传递第n个可选参数?
- Unity单例模式+例子
- VS2010 SP1安装卡在VS10Sp1-KB983509处的解决(转)
- mysql创建临时表慢_mysql临时表产生的执行效率问题改进(转)
- PHOTOSHOP 小技巧
- luogu 5561 [Celeste-B]Mirror Magic 后缀数组+RMQ+multiset
- nginx防止CDN大量回源
- 修改IP的cmd命令
- k近邻算法python_k-近邻算法的Python实现
- visual studio 全局搜索 找不到文字
- 【中危】Sweet32: TLS 64位分组密码生日攻击(CVE-2016-2183)
- HTML iframe 标签
- idea中启动vue项目
- 增删改查--基本思路
- 阅文集团面试题回答不完善的总结
- 金蝶K3 11.0-K3HR系统在Win2003环境的设置指南