[英]Velocity template - using java script variables in velocity foreach
[英]Using Java 5 enums as Velocity variables
所有。 我需要在速度模板中使用java 5枚舉,以便我可以編寫類似的東西
public enum Level{ INFO, ERROR; } Velocity template: #if($var == Level.INFO) ... #else ... #end
怎么做到呢? 提前致謝。
實際上,使用name()代替toString()方法更好,因為它准確返回枚舉的值並且是最終的,因此將來不能覆蓋。 所以在速度上你可以使用類似的東西
#if($var.name() == "INFO")
從Velocity 1.5開始,如果與==比較的兩個項目具有不同的類別,它會自動在兩者上執行toString()。 所以試試吧
#if($var == "INFO")
不太好,但一種解決方法是(手動)將您需要的枚舉常量放入Velocity上下文中。
request.setAttribute('level_info', Level.INFO);
request.setAttribute('level_error', Level.ERROR);
然后你可以說
#if ($var == $level_info)
也許更簡單:只需使用枚舉實例的toString()
#if ("$var" == 'INFO')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.