【发布时间】:2026-01-09 00:45:01
【问题描述】:
我在我的 java/spring 3 应用程序中为电子邮件模板使用速度。
如何从模板中获取添加到模型中的 ArrayList 的大小。
【问题讨论】:
标签: java spring templates velocity
我在我的 java/spring 3 应用程序中为电子邮件模板使用速度。
如何从模板中获取添加到模型中的 ArrayList 的大小。
【问题讨论】:
标签: java spring templates velocity
我从未使用过 Velocity,但它的 VTL reference guide 表示调用方法是使用 $customer.getAddress() 或 ${purchase.getTotal()} 完成的。所以我会使用${myArrayList.size()}。
【讨论】:
可以像访问任何其他对象一样访问集合,因此$collection.size() 将包含一个值。
数组是special cased,其行为类似于List,因此虽然$array.length 不起作用,但$array.size() 起作用。
【讨论】:
Object[] 正则对象数组,这里不用多说。 Velocity 将在内部将您的数组包装在一个提供 Iterator 接口的类中,但这不应该与您作为程序员或模板作者有关。更有趣的是,Velocity 现在将允许模板作者将数组视为固定长度的列表(从 Velocity 1.6 开始)。这意味着他们可以在数组和标准 java.util.List 实例上调用 size()、isEmpty() 和 get(int) 之类的方法,而不用关心它们的区别。
因此,使用 size() 在 java.util.List 和 java 数组上同样有效。
【讨论】: