all。私はそれを行うことができますどのようにベロシティ変数としてJava 5 enumを使用する
public enum Level{ INFO, ERROR; } Velocity template: #if($var == Level.INFO) ... #else ... #end
ような何かを書くことができるように、私は、VelocityテンプレートでJava 5列挙型を使用する必要がありますか?前もって感謝します。
all。私はそれを行うことができますどのようにベロシティ変数としてJava 5 enumを使用する
public enum Level{ INFO, ERROR; } Velocity template: #if($var == Level.INFO) ... #else ... #end
ような何かを書くことができるように、私は、VelocityテンプレートでJava 5列挙型を使用する必要がありますか?前もって感謝します。
あなたの列挙型のインスタンスのtoString()
を使用します。
request.setAttribute('level_info', Level.INFO);
request.setAttribute('level_error', Level.ERROR);
次に、あなたは簡単にたぶん
#if ($var == $level_info)
を言うことができますname()はenumの値を正確に返して最終的なものであるため、将来は上書きすることはできません。だから、速度にあなたは==と比較される2つの項目が異なるクラスである場合、それは自動的に両方の上で()のtoStringを行い、速度1.5のとおり
#if($var.name() == "INFO")
のようなものを使用することができます。だから試してみてください
#if($var == "INFO")
もしあなたが実際に何をしているかによって。また、これが1種類だけであるか、それとも多くの異なる操作であるか。 http://stackoverflow.com/questions/859563/java-enums-and-switch-statements-the-default-caseが役立つ可能性があります。 – bryantsai