わかりましたので、基本的に私は、列挙型を持っている:へのアクセス文字列コレクション(セッションスコープVSアプリケーションスコープ)
public enum A {
A, B, C, D;
public static final Collection<String> displayColl = createDisplay();
private static Collection<String> createDisplay() {
// Convert enum to acceptable String display magic here...
return ImmutableCollection.copyOf(string collection);
}
}
私はメニューオプションとしてJSPにこのコレクションにアクセスしたいと思います。私は、次の4つのオプションがあり、そして${application.StringDisplayCollection}
を呼び出すことによって
置きます...これは、私が使うべき1と方法を知っている
ServletContext
属性でコレクションとJSPのアクセス、それをしたいと思います。私が必要とする度にコレクションの不変なコピーを取り除き、それをセッションに保存してから、セッションスコープを通してjspにアクセスしてください。
コレクションをJSONに変換し、必要に応じてページが読み込まれるたびにそれを取得します。
私はそのことを考えていないいくつかのクールな方法が良いおよび/または単純だろう...
ありがとう、あなたが任意の明確化が必要な場合は私に知らせてください。
大丈夫です。不変性以外にも、実装の提案はありますか? $ {application.DisplayClass.StringDisplayColl}などのすべてのコレクションを保持するクラスを1つ持つか、$ {application.EnumName.StringDisplayColl}をコールするだけですか?ありがとう。 – oberger