zoukankan      html  css  js  c++  java
  • Velocity模板学习(一)

    一、Velocity是什么

    Velocity是一个基于Java的模板引擎,允许任何人仅仅简单地使用模板语言就可以引用由Java代码编写的对象。

    二、Velocity的基本语法

    1.变量

    • 变量的定义
      在Velocity中,变量的类型是弱类型的。
    #set($name = 'xiaoqian');
    

    当用#set指令的时候,#set命令后面的括号中的字面字符串将被解析和重新解释。

    #set($begin = 'www');
    #set($end = 'index.vm');
    #set($all = "$begin/$end");
    

    $all的值为www/index.vm

    • 变量规范的写法
      ${name},也可以写成$name,提倡前面一种写法。
    tom is a last $nameline;//这种情况下Velocity不能识别出您到底要使用什么变量
    tom is a last ${name}line;//用{}括起来就比较清晰
    

    但是在引用属性的时候不要加{}

    • 变量的赋值
      赋值的变量左边必须是一个变量或者属性引用,右边可以是下面6种值之一。
      变量引用,字面字符串,属性引用,方法引用,字面数字,数组列表
    #set($aa = $bb);
    #set($aa.c = 'tomcat');
    

    注意:
    (1)如果上面例子的右边值为null,那么左值不会被赋值,会保留原来的值。
    (2)Velocity模板中未被定义的变量将被认为是一个字符串
    (3)Velocity模板不会将reference解释成对象的实例变量

    2.循环

    #foreach ($element in $list)
    $VelocityCount
    This is $element
    #end
    
    //举例
    #set($list = ['apple','pear','pink']);
    #foreach ($element in $list)
    $VelocityCount
    This is $element
    

    上面例子输出的是
    1 This is apple
    2 This is pear
    3 This is pink

    3.条件语句

    #if(condition)
    #elseif(condition)
    #else
    #end
    

    4.语句的嵌套

    #foreach ($element in $list)
    
    #inner foreach
    

    5.将不存在的变量或者变量的值为null强制显示为空白

    $!name或者$!{name}
    

    因为如果不在前面加上!,那么在变量不存在或者变量值为null的时候,就直接会显示原来的字符
    举例:
    $name,当name不存在的话,就直接会显示$name,如果加上!的话,就会显示空白,这样才比较合理

  • 相关阅读:
    进制转换
    BZOJ 1232 安慰奶牛题解
    [BeiJing wc2012]冻结 题解
    the Captain题解;
    最佳贸易
    第二短路
    街道赛跑
    图论基础知识.
    Tkinter 之事件绑定
    Tkinter 之TopLevel顶级窗口
  • 原文地址:https://www.cnblogs.com/sminocence/p/9343099.html
Copyright © 2011-2022 走看看