$velocityCount和Tool的使用
来源:互联网 发布:淘宝劲舞团徽章 编辑:程序博客网 时间:2024/05/16 08:07
板语言大家都熟悉,$var,#method(),#marco,#foreach,#if #elseif #end,#parse,#set都是常用的命令了。只要知晓这几个用法,也就可以算是脸熟了。
结合我自己使用Velocity的应用,我觉得还有一些几个经验很值得和大家分享:
1、$velocityCount
这个变量在velocity属性文件中定义,在#foreach的时候可以用得上,比如我foreach一个List<User>时,我们可以使用$velocityCount判断完成形如“张三,李四”的输出(李四后面没有逗号)
或
默认$velocityCount 从1开始。
2、Tool的应用
Tool在Velocity中便是一个可以在模板中全局使用的对象。常用的有$errors, $date, $text
$errors: 用于读取在request中保存的错误提示信息(如密码错了等等),可这样用:
$date:用于格式化时间类型,e.g:
$text 用于读取配置在属性文件中在国际化信息, e.g.
便是读取ApplicationResources_zh_CN.properties文件中"inbox=收件箱"这个设置(plus广告:编辑属性文件时,需要unicode保存文件内容,这对中文很不方便,自从有了propedit插件,他自动完成这个转化,使用起来节省不少工作量,1片顶5片,值! )
Velocit的Tool都是普通的Java类,不用继承或实现基础类或接口,任何一个Java类,只要有默认构造器,都可以配置在velocity toolbox.xml中便可在模板中使用,配置的基本样式如下:
更多的常用Tool可以在Velocity网站上直接查看他们的使用说明:http://velocity.apache.org/tools/releases/1.3/generic/
当然对于特殊于自己项目中经常用到的一些“工具变量”,也可以把它配置到toolbox中。
结合我自己使用Velocity的应用,我觉得还有一些几个经验很值得和大家分享:
$velocityCount的应用
Tool的应用
layout的应用
1、$velocityCount
这个变量在velocity属性文件中定义,在#foreach的时候可以用得上,比如我foreach一个List<User>时,我们可以使用$velocityCount判断完成形如“张三,李四”的输出(李四后面没有逗号)
- #foreach($user in $users)
- #userNode($user)#if($velocityCount != $user.size()),#end
- #end
或
- #foreach($user in $users)
- #if($velocityCount != 1),#end #userNode($user)
- #end
默认$velocityCount 从1开始。
2、Tool的应用
Tool在Velocity中便是一个可以在模板中全局使用的对象。常用的有$errors, $date, $text
$errors: 用于读取在request中保存的错误提示信息(如密码错了等等),可这样用:
- #foreach ($e in $errors.all )
- <li>$e</li>
- #end
$date:用于格式化时间类型,e.g:
- $date.format('yyyy-MM-dd', $post.lastModified)
$text 用于读取配置在属性文件中在国际化信息, e.g.
- $text.get("inbox")
便是读取ApplicationResources_zh_CN.properties文件中"inbox=收件箱"这个设置(plus广告:编辑属性文件时,需要unicode保存文件内容,这对中文很不方便,自从有了propedit插件,他自动完成这个转化,使用起来节省不少工作量,1片顶5片,值! )
Velocit的Tool都是普通的Java类,不用继承或实现基础类或接口,任何一个Java类,只要有默认构造器,都可以配置在velocity toolbox.xml中便可在模板中使用,配置的基本样式如下:
- <!--
- http://velocity.apache.org/tools/releases/1.3/generic/:
- Example of formatting the "current" date:
- $date -> Oct 19, 2003 9:54:50 PM
- $date.long -> October 19, 2003 9:54:50 PM PDT
- $date.medium_time -> 9:54:50 PM
- $date.full_date -> Sunday, October 19, 2003
- $date.get('default','short') -> Oct 19, 2003 9:54 PM
- $date.get('yyyy-M-d H:m:s') -> 2003-10-19 21:54:50
- Example of formatting an arbitrary date:
- $myDate -> Tue Oct 07 03:14:50 PDT 2003
- $date.format('medium',$myDate) -> Oct 7, 2003 3:14:50 AM
- -->
- <tool>
- <key>date</key>
- <scope>application</scope>
- <class>org.apache.velocity.tools.generic.DateTool</class>
- <parameter name="format" value="yyyy-MM-dd" />
- </tool>
更多的常用Tool可以在Velocity网站上直接查看他们的使用说明:http://velocity.apache.org/tools/releases/1.3/generic/
当然对于特殊于自己项目中经常用到的一些“工具变量”,也可以把它配置到toolbox中。
- $velocityCount和Tool的使用
- 使用velocity :$velocityCount和Tool的使用
- Qt hasfocus()的使用和Qt::Tool
- velocity中for循环中使用VelocityCount
- i2c tool 的使用
- inotify-tool的使用
- i2c tool 的使用
- 【tool】logminer的使用
- 双语对齐工具Champollion tool kit的配置和使用
- Zigbee MT功能和Z-tool的使用
- IIS Lock Tool的使用
- esp8266 download tool的使用
- Velocity中 #foreach时velocityCount计数不起作用的问题。
- mii-tool的限制/mii-tool和千兆网络
- universe design tool 和information design tool的区别
- [ios tool]CocoaPods安装和使用教程
- 使用Velocity的tool出现的问题
- 第一个使用Spring Tool Suite(STS)和Maven建立的Spring mvc 项目
- 推荐算法比较
- PHPUnit使用指南之安装PHPUnit
- Java--super关键字(via)
- 不懂商业就别谈数据
- 反射机制首个程序
- $velocityCount和Tool的使用
- Java语言实现简单FTP软件------>FTP协议分析(一)
- 数据如何帮助业务
- REST 入门介绍
- PHP设计模式-策略模式
- Velocity的layout功能
- Linq之SelectMany
- [LeetCode] Combination Sum、Combination Sum II
- android真机测试,在eclipse中无法打开data文件夹