首页 >

Velocity实例教程分享

Java|java教程Velocity实例教程分享
Velocity,教程,小的
Java-java教程
1. Velocity 是什么?
qq装逼源码,ubuntu 查看显卡硬件,世界爬虫专家名单,php adminmsg,英文seo周期lzw
Velocity 是一个基于Java的模版引擎,它提供模版语言用于引用Java代码定义的对象。
海思源码,vscode能调试汇编吗,htc ubuntu,杀 tomcat进程,sqlite 行数,学生网页设计成品网站,mysql数据库 查看用户,外贸企业服务器,zepto.js 日期插件,sass 前端框架,爬虫馆粮,php代码优化,长沙seo服务外包,springboot多少层,ff下css标签样式无效,php网站目录管理系统,易语言网页访问,bootstrap 图文模板,后台系统配色,电子书阅读页面代码,二维码设备管理系统源码,wp程序foxpaylzw

2. Velocity 能做什么?

Velocity能创建HTML页面,并预留占位符。(最基本用途)

炸金花源码带控制,Ubuntu火狐中文设置,部署到tomcat访问不到,爬虫示例python,php调用栈,seo推广时间地域定向实训教程lzw
Velocity能基于模板生成Java,SQL源代码。(没见过)

自动生成电子邮件。(没见过)

读取XML,并转换成需要的文档格式,通常是HTML。(没见过)

3. Velocity示例

Velocity 注解

单行 ##
多行 #* *#
代码块注释(信息) ##* *#

Velocity 变量

定义:

#set( $foo = "Velocity" )
使用:

$foo${foo}
Velocity 集合

#set( $greatlakes = ["Superior","Michigan","Huron","Erie","Ontario"] )
Velocity 条件判断

#if( $foo < 10 )    Go North#elseif( $foo == 10 )    Go East#else    Go West#end
Velocity 循环

#foreach( $customer in $customerList )    #if( $foreach.count > 5 )        #break    #end    $customer.Name#end

Velocity 引用文件

#include( "one.vm" ) one.vm 不解析。#parse( "me.vm" ) me.vm 解析。
Velocity 定义代码块

#define( $block )Hello $who#end#set( $who = 'World!' )$block
Velocity 宏调用

无参

#macro( d )#end#d()
单参

#macro( d )$!bodyContent#end#@d()Hello#end
任意参数

定义

#macro( tablerows $color $somelist )#foreach( $something in $somelist )    $something#end#end
调用

#set( $greatlakes = ["Superior","Michigan","Huron","Erie","Ontario"] )#set( $color = "blue" )    #tablerows( $color $greatlakes )
输出

Superior
Michigan
Huron
Erie
Ontario

Velocity 填坑

1. 各种写法

$foo## is the same as${foo}$foo.getBar()## is the same as$foo.Bar$data.setUser("jon")## is the same as#set( $data.User = "jon" )$data.getRequest().getServerName()## is the same as$data.Request.ServerName## is the same as${data.Request.ServerName}
2. Velocity 变量未定义
使用 $!,例

$!foo
当 foo 未定义,输出空白字符串。

3. Velocity 调用顺序
Velocity中$customer.address,调用顺序:

getaddress()getAddress()get("address")isAddress()
4. #if ($foo)
两种情况都返回true:
(1)$foo是一个 boolean 类型,且为 true。
(2)$foo不是 0,也不是 null。

5. #if ($foo == $bar)
因为Velocity变量最终都作为字符串输出,所以Velocity会自动调用 .toString() 将变量转换成字符串。
所以,$foo 和 $bar 都当成字符串进行比较。即使Java代码中类型不同,也有可能返回true。

Velocity 严格模式

Velocity 1.6引入严格引用模式,通过设置Velocity配置属性“runtime.references.strict”为true激活。
当遇到没有定义或者存在歧义的情况Velocity将抛出异常。

希望这篇文章对你有帮助。by iamtjcn


Velocity实例教程分享
  • Java中使用velocity小技巧的分享
  • Java中使用velocity小技巧的分享 | Java中使用velocity小技巧的分享 ...

    Velocity实例教程分享
  • JS动画比CSS3动画性能谁更好?
  • JS动画比CSS3动画性能谁更好? | JS动画比CSS3动画性能谁更好? ...

    Velocity实例教程分享
  • velocity第二个应用例子—访问对象
  • velocity第二个应用例子—访问对象 | velocity第二个应用例子—访问对象 ...