这里有一些我工作中用到的volicity和在网上找的感觉比较有用的。在这里保存一下。希望能帮到自己和需要的人

问题1:若返回的的字段是一个数组,我想获得数组的第一个值展示。那么我们可以用这个数组.get(index)方法实现

答: $!array = [1,2,3,4,5]; //我们想展示1,就可以 ; $!array.get(0); 

1.变量声明 #set()  

  | eg:#set($name=name);这里的变量只能$ 不能$!  .除此以外变量最好是$!name的;因为如果内容为空时$!name不显示。$name 的会显示出来。

2.判断语句#if()#elseif()#else#end    注:写法跟js中的if没有什么区别。

  | eg:#if($!name=='小明')

       <div style='width:100px;height:100px;background:red;'></div>

    #elseif($!name=='小红')

       <div style='width:100px;height:100px;background:yellow;'></div>

    #else

      <div style='width:100px;height:100px;background:green;'></div>

    #end

3.循环语句:#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

 

4.时间格式:$!dateUtil.format($!time,'yyyy-MM-dd HH:mm:ss')

    解释:                        时间参数,时间格式(自定义)

    问题:最好是后端给处理一下,不然好像是不好用。我用的时候是后端处理了我这么写才好用的

5.插入代码:#parse('b.vm') #include

    解释:可以在指定位置插入b.vm代码。b.vm可以共用父元素的变量。

      与#include不同的是,#parse只能指定单个对象。而#include可以有多个

如果需要引入多个文件,可以用逗号分隔就行:

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

在括号内可以是文件名,但是更多的时候是使用变量的:

#include ( “greetings.txt”, $seasonalstock )

(2) #include被引入文件的内容将不会通过模板引擎解析;

而#parse引入的文件内容Velocity将解析其中的velocity语法并移交给模板,意思就是说相当与把引入的文件copy到文件中。

#parse是可以递归调用的。

上面的几个是我工作中用到的下面的是我查找的。

6.动态执行字符串的值:#evaluate( 'abc #if(true)def#end' )

    解释:以为没有用里面能执行if语句。感觉很强大。

7.不解析执行的内容:#[[  * *  ]]#

    解释:你想不解析直接输出某一块模板时候可以使用

8.获取url中的参数#set($n = $!request.getParameter('n'));

    解释:感觉不怎么对呢。用的时候要借鉴一下别人的,以后再来改吧

9.语句注释    

    单行注释:## 单行注释代码

    多行注释:#* 多行注释代码 *#

    留坑=================================

posted on 2017-01-12 21:47  刘小北~!  阅读(203)  评论(0编辑  收藏  举报