Velocity的数值类型,在页面显示的时候,系统会调用toString,自动将它们转换成字符串类型。
那么,在JSP页面里,怎么进行数值类型的运算呢?其实,很简单,可直接进行运算,如下:
- #set($result=${cpsIncome}/${newUserCount})
然后,将计算结果($result),在页面中显示。
运算结果(0.12979978058145913)默认的小数位数很长,如何保留两位小数呢?
Velocity已经提供了很完善的工具(velocity-tools),用它即可。下面是使用方法:
1、在Struts的配置文件(struts.xml)中,指定该工具的配置文件的位置。
- <struts>
- <constant name="struts.velocity.toolboxlocation" value="WEB-INF/toolbox.xml" />
- </struts>
2、修改该工具的配置文件,添加自己所需的工具(比如NumberTool)。
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd">
- <toolbox>
- <tool>
- <key>NumberTool</key>
- <scope>application</scope>
- <class>org.apache.velocity.tools.generic.NumberTool</class>
- </tool>
- <tool>
- <key>NumericTool</key>
- <scope>application</scope>
- <class>com.yunlan.desktop.back.tool.NumericTool</class>
- </tool>
- </toolbox>
3、然后,在JSP页面里,即可使用该工具,进行各种格式化了。
- $NumberTool.format("#0.00",$result)
注意:如果Velocity自带的工具类,不能满足我们的需求,那么,可以使用自己定义的格式化类(比如上述配置里的NumericTool)。
1、自定义的NumericTool类的实现源码。
- package com.yunlan.desktop.back.tool;
- public class NumericTool {
- /**
- * 将浮点数小数,固定保留两位小数
- */
- public static String toFixedNumber(Double d) {
- if (d == null) {
- return "";
- }
- String valStr = String.format("%1$.2f", d);
- return valStr;
- }
- }
2、在JSP页面里,使用自定义的NumericTool类。
- $NumericTool.toFixedNumber($result)
日期的格式化,跟数值的格式,基本类似,具体可参考官方文档。
官方文档:http://velocity.apache.org/tools/devel/
From: http://blog.csdn.net/gaojinshan/article/details/38850721
相关推荐
- **数值与日期格式化**:Velocity提供了丰富的日期与数值格式化功能。例如,`$dateTool.format('EEE, MMM d, yyyy', $article.getDisplayDate())`可以用于格式化日期。同时,也可以使用`$date.format('yyyy-MM-dd ...
4. **工具箱(Tools)**:Velocity Tools是Velocity的一个扩展库,提供了一系列预定义的工具类,如ViewTool、HtmlEscaper等,可以帮助开发者更方便地处理常见的任务,如日期格式化、URL编码等。在提供的`velocity-...
Velocity 支持多种格式化选项,包括日期、数字等的格式化。 #### 18. 其它特征和杂项 ##### 18.1 数学特征 Velocity 提供了一些内置的数学函数,例如加减乘除等。 ##### 18.2 范围操作符 范围操作符用于表示一...
Velocity提供了一些内置工具,如`EscapeTool`用于转义HTML,`NumberTool`处理数值计算,`DateTool`处理日期和时间,`StringUtils`处理字符串操作等。这些工具可以通过`velocity.properties`配置文件添加到上下文中,...
例如,你可以创建一个包含公司报告结构的模板,然后在运行时替换具体的数值、日期和文本,从而快速批量生成多个定制化的报告。 将生成的RTF文件转换为Word文档是另一个有用的功能。由于RTF格式与Microsoft Word高度...
MATLAB是一种广泛用于科学计算和数据分析的编程语言,其强大的数值计算能力使其成为地震学研究的理想工具。此脚本可能包含了读取地震数据、计算速度、进行均方根运算以及可能的可视化步骤。 `Test_velocity_...
- **数据操作**: 支持设置单元格的数据类型(数值、字符串、日期等),读取数据,以及样式和公式操作。 2. **JExcelAPI使用**: - **安装**: 添加JExcelAPI库到项目中。 - **读取Excel文件**: 使用`Workbook`类...
第二章 数值和类型 ................................................................................................. 19 2.1 基本内容 .......................................................................
第二章 数值和类型 ................................................................................................. 20 2.1 基本内容 .......................................................................