【问题标题】:Dollar and exclamation mark (bang) symbols in VTLVTL 中的美元和感叹号(爆炸)符号
【发布时间】:2019-02-06 06:36:41
【问题描述】:

我最近在一些 Velocity 代码中遇到了这两个变量:

$!variable1
!$variable2

我对它们的相似性感到惊讶,因此我开始怀疑代码的正确性,并对找出两者之间的区别感兴趣。

velocity 是否可能允许这两个符号的任意顺序,或者它们有不同的目的?你知道答案吗?

【问题讨论】:

    标签: velocity dollar-sign vtl


    【解决方案1】:

    @Jr.这是我在做虚拟机研发时遵循的指南:http://velocity.apache.org/engine/1.7/user-guide.html

    Velocity 使用 !$ 和 $!不同事物的注释。如果你使用 !$ 它基本上和普通的“!”是一样的。运算符,但 $!用作基本检查以查看变量是否为空,如果是,则将其打印为空字符串。如果您的变量为空或 null 并且您不使用 $!注释它会将实际的变量名称打印为字符串。

    【讨论】:

      【解决方案2】:

      在我终于在people.apache.org 找到答案之前,我在 Google 上搜索和 stackoverflow 了很多次。

      据此:

      很容易将安静的引用符号与 布尔非运算符。使用非运算符,您使用 !${foo},而 安静的参考符号是 $!{foo}。是的,你最终会 有时用 !$!{foo}...

      毕竟很简单,遗憾的是它没有立即打动我。希望这对某人有所帮助。

      【讨论】:

      • 在谷歌中搜索特殊字符并不容易...我没有找到任何有用的东西所以我打开了文档并开始搜索!符号
      猜你喜欢
      • 2020-01-24
      • 1970-01-01
      • 2012-01-27
      • 2013-07-12
      • 2017-07-05
      相关资源
      最近更新 更多