FreeMarker(一)字符输出 一、字符串 1、常用变量 ${emp.name?if_exists}// 变量存在,输出该变量,否则不输出${emp.name!}// 变量存在,输出该变量,否则不输出${emp.name?default("xxx")}// 变量不存在,取默认值xxx${emp.name!"xxx"}// 变量不存在,取默认值xxx 2、常用内部函数 ${"123456"?html}//...
Freemarker输出字符串而不是文件 Freemarker一般是通过writer输出到文件的处理过程,但是这个过程不是很优化的,大量的IO操作使程序变的很慢。尤其是生成对应的文件后,再做一些处理,更是慢上加慢。 废话少说,先看看改造前的代码。 cfg.setClassForTemplateLoading(this.getClass(), "/"); cfg.setObjectWrapper(new ...
使用直接指定值的语法让FreeMarker直接输出插值中的值,而不是输出变量值。直接指定值可以是字符串、数值、布尔值、集合和MAP对象。 如果字符串中包含特殊字符,需要转义。 ${"文件保存在c:\\盘"} --输出为-- 文件保存在c:\盘 ${'名字是\"Hoffman\"'} --输出为-- 名字是"Hoffman 注意:Map对象的key和value...
14. replace用于将字符串中的一部分从左到右替换为另外的字符串。 ${“strabg”?replace(“ab”,”in”)} 结果为string 15. split使用指定的分隔符将一个字符串拆分为一组字符串 <#list “This|is|split”?split(“|”) as s> ${s} </#list> 结果为: This is split 16. trim 删除字符串首尾空格...
1.关于boolean的配置 freemarker中输出时可以使用这种方式输出${xxx?string("true","flase")} 当xxx为true时显示字符串true,否则为字符串false,当然true,false字符串也可以换成其他字符串,比如yes和no。 单纯的输出true/false,可以这样写 ${xxx?c}
难道需要自己定义一套模板语法和规则,比如指定两个尖括号{{ 参数 }}中的内容为需要替换的参数,然后通过正则表达式或者字符串匹配扫描文件来进行替换么? 显然这太麻烦了!而且如果我需要根据用户的输入来生成不同次数的重复代码(也就是循环),又该如何实现呢?
11.upper_case将字符串转为大写 ${“string”?upper_case}à结果为STRING 12.contains 判断字符中是否包含某个子串。返回布尔值 ${“string”?contains(“ing”)?string} à结果为true 注意:布尔值必须转换为字符串才能输出 13.number将字符串转换为数字 ...
插值是用来给表达式插入具体值然后转换为文本(字符串),FreeMarker 的插值主要有如下两种类型: •通用插值:${expr} •数字格式化插值: #{expr} 这里主要介绍通用插值,当插入的值为字符串时,将直接输出表达式结果,举个例子: 代码语言:javascript 代码运行次数:0 复制Cloud Studio 代码运行 eg: ${100 + 5} =>...
2.4 字符串模板 1、概述 FreeMarker 是一款模板引擎:一种基于模板的、用来生成输出文本(任何来自于 HTML格式的文本用来自动生成源代码)的通用工具。 它是为Java程序员提供的一个开发包或者说是类库。 它不是面向最终用户,而是为程序员提供的可以嵌入他们开发产品的一款应用程序。
简介:一个字符串,form是第一个字符(A substring of the string.from is the index of thefirst character.),它必须是一个数字,而且至少是0和小于0或者具有相同的toExclusive.进行截取操作的最后字符的索引,该值必须为数字,如果该值省略,默认为从from到字符串的结束。