`
hqman
  • 浏览: 362972 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Velocity体验

    博客分类:
  • java
阅读更多
Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。

官方网站:http://jakarta.apache.org/velocity/







Velocity脚本摘要





1、声明:#set ($var=XXX)

左边可以是以下的内容

Variable reference

String literal

Property reference

Method reference

Number literal #set ($i=1)

ArrayList #set ($arr=["yt1","t2"])

技持算术运算符



2、注释:

单行## XXX

多行#* xxx

xxxx

xxxxxxxxxxxx*#



References 引用的类型

3、变量 Variables

以 "$" 开头,第一个字符必须为字母。character followed by a VTL Identifier. (a .. z

or A .. Z).

变量可以包含的字符有以下内容:

alphabetic (a .. z, A .. Z)

numeric (0 .. 9)

hyphen ("-")

underscore ("_")



4、Properties

$Identifier.Identifier

$user.name

hashtable user中的的name值.类似:user.get("name")



5、Methods

object user.getName() = $user.getName()



6、Formal Reference Notation

用{}把变量名跟字符串分开





#set ($user="csy"}

${user}name

返回csyname





$username

$!username

$与$!的区别

当找不到username的时候,$username返回字符串"$username",而$!username返回空字符串""



7、双引号 与 引号

#set ($var="helo")

test"$var" 返回testhello

test'$var' 返回test'$var'

可以通过设置 stringliterals.interpolate=false改变默认处理方式





8、条件语句

#if( $foo )

<strong>Velocity!</strong>

#end

#if($foo)

#elseif()

#else

#end

当$foo为null或为Boolean对象的false值执行.



9、逻辑运算符:== && || !



10、循环语句#foreach($var in $arrays ) // 集合包含下面三种Vector, a Hashtable or an Array

#end

#foreach( $product in $allProducts )

<li>$product</li>

#end



#foreach( $key in $allProducts.keySet() )

<li>Key: $key -> Value: $allProducts.get($key)</li>

#end



#foreach( $customer in $customerList )

<tr><td>$velocityCount</td><td>$customer.Name</td></tr>

#end

11、velocityCount变量在配置文件中定义

# Default name of the loop counter

# variable reference.

directive.foreach.counter.name = velocityCount

# Default starting value of the loop

# counter variable reference.

directive.foreach.counter.initial.value = 1





12、包含文件

#include( "one.gif","two.txt","three.htm" )



13、Parse导入脚本

#parse("me.vm" )



14、#stop 停止执行并返回



15、定义宏Velocimacros ,相当于函数 支持包含功能

#macro( d )

<tr><td></td></tr>

#end

调用

#d()



16、带参数的宏

#macro( tablerows $color $somelist )

#foreach( $something in $somelist )

<tr><td bgcolor=$color>$something</td></tr>

#end

#end



17、Range Operator

#foreach( $foo in [1..5] )
分享到:
评论
3 楼 wutao8818 2008-06-19  
freemarker!!
2 楼 qichunren 2008-02-14  
我也要看看
1 楼 linguohuistudy 2007-10-23  
学习学习 我也体验一下...

相关推荐

    Java的模板引擎Velocity初体验.pdf

    Velocity 模板引擎初体验 Velocity 是一种 Java 模板引擎技术,由 Apache 提出,是一种基于 Java 的模板引擎,允许任何人使用简单而强大的模板语言来引用定义在 Java 代码中的对象。Velocity 的主要功能是桥梁 ...

    velocity-1.5.jar,velocity-1.6.2-dep.jar,velocity-tools-1.3.jar

    Velocity是Apache软件基金会的一个开源项目,它...总的来说,Velocity和Velocity Tools是Java Web开发中的重要组件,它们帮助开发者构建高效、可维护的Web应用,同时保持前后端的清晰分离,提高了开发效率和用户体验。

    velocity插件

    了解并熟练运用 Velocity 插件,能够极大地提升 MyEclipse 10 用户在处理 Velocity 模板时的体验和效率,使模板的编写和维护变得更为简单和高效。在实际开发中,开发者应该充分利用这些工具,以提升开发质量和效率。

    eclipse中velocity插件

    总的来说,Eclipse中的Velocity插件是Java Web开发者不可或缺的工具,它简化了Velocity模板的开发和维护,提升了开发体验。熟练掌握插件的使用,能够帮助你更高效地利用Velocity进行Web应用的开发。

    eclipse编辑velocity插件velocitysite-2.0.8

    Eclipse编辑Velocity插件VelocitySite-2.0.8是一款专为Java开发人员设计的工具,旨在提升在Eclipse集成开发环境中编辑Velocity模板语言(VTL)的效率和体验。Velocity是一个快速、轻量级的Java模板引擎,常用于Web...

    velocity文档(Velocity1.4java开发指南中文版,Velocity1.4模板使用指南中文版中文版)

    ** Velocity 概述** Velocity 是一个开源的 Java 模板引擎,它允许开发者...通过上述步骤,你将能够熟练地使用 Velocity 1.4 进行 Java Web 开发,将动态数据无缝地融合到静态页面中,提升项目的开发效率和用户体验。

    JAVA的Velocity语法学习

    提供的《Velocity_java开发指南》和《Java的模板引擎Velocity初体验》两本书籍是学习Velocity的好资料。它们会详细介绍Velocity的使用方法、语法特性以及最佳实践,对于初学者来说非常有帮助。同时,Apache官网也有...

    Velocity标签详解文档

    在实际应用中,比如在线MUD商店的例子,Velocity可以帮助创建个性化的用户体验。当用户登录时,页面可以根据用户的历史购买记录,通过VTL(Velocity Template Language)动态展示相关的促销商品。VTL是Velocity的...

    velocity(eclipse插件)

    6. **集成开发环境增强**: 与Eclipse的其他特性如版本控制、重构和调试工具无缝集成,提升开发体验。 **三、使用技巧** 1. **模板注释**: 使用`#* ... *#`进行注释,这在开发和调试过程中非常有用。 2. **指令...

    myeclipse的velocity插件

    总的来说,MyEclipse 的 Velocity 插件为 Velocity 模板开发提供了强大的支持,不仅提升了开发效率,还增强了开发体验。对于需要使用 Velocity 的 MyEclipse 用户来说,这是一个不可或缺的工具。

    Velocity_中文手册

    Velocity是一个基于Java的模板引擎,它的主要用途是将动态内容嵌入到Web页面中。...通过这些知识的积累,用户能够更充分地利用Velocity模板引擎强大的功能,为网站添加动态内容,优化用户体验,并提高开发效率。

    Velocity脚本简明教程

    通过理解和掌握上述知识点,开发者能够更好地利用Velocity进行模板设计,提升应用的用户体验并简化开发流程。学习和实践Velocity,你将发现它是一个强大且灵活的工具,可以为你的项目带来诸多便利。

    eclispe的velocity插件

    总的来说,Eclipse的Velocity插件是Java开发人员的强大工具,它极大地提升了VML文件的编辑体验,使得模板开发变得更加高效和愉快。通过利用插件提供的各种特性,开发者能够更好地管理和优化Velocity模板,从而提升...

    velocity 中文开发文档

    - **高效的数据整合**:轻松地将数据库中的数据整合到网页中,提高用户体验。 - **模板语言 VTL**:提供了一种简单易懂的方式来嵌入动态内容到网页中。 #### 三、Velocity Template Language (VTL) 介绍 - **VTL...

    Velocity用户手册_中文.docVelocity用户手册_中文.doc

    例如,在一个在线MUD商店的场景中,Velocity 可以根据用户的购买历史个性化展示商品,提高用户体验。页面中的VTL声明可以直接嵌入HTML,通过变量引用(References)和指令(Directives)来动态生成内容。 VTL的语法...

    Velocity 模版

    在实际项目中,`Java的模板引擎Velocity初体验.doc` 可能包含了初学者如何快速上手 Velocity 的步骤和常见问题。而 `Velocity2.ppt` 很可能是一个详细的 Velocity 进阶教程,涵盖了高级特性如宏、自定义工具类的使用...

    MyEclipse-Velocity-2.0.8插件

    通过这个组件,开发者可以在MyEclipse中享受到与编写Java代码类似的编辑体验,提升开发效率。 `README.txt`文件通常包含安装教程和使用指南。在这个案例中,它可能是指导用户如何将MyEclipse-Velocity插件安装到...

    Velocity快速指南

    - **前端与后端分离**:前端开发人员可以专注于界面设计和用户体验,而后端开发人员则负责业务逻辑的实现。 - **动态内容生成**:利用Velocity的强大功能,可以方便地生成动态网页内容。 - **代码重用**:通过定义...

    Velocity语法以及整合struts2总结

    【Velocity语法以及整合struts2总结】 Velocity是一个开源的Java模板引擎,它是Apache软件基金会的Jakarta项目的一部分。...正确理解和掌握Velocity的语法和整合方法,能有效提升Web应用的开发效率和用户体验。

Global site tag (gtag.js) - Google Analytics