質問
この質問にはすでに回答があります:
- ELで定数を参照する方法 12答え
スクリプトレットを使用せずにJSP内でEnum値を使用する方法はあります。
e.g。
package com.example;
public enum Direction {
ASC,
DESC
}
だからJSPでこのようなことをしたい
<c:if test="${foo.direction ==<% com.example.Direction.ASC %>}">...
解決
enum内の方向にフィールドとしてWebフレンドリーテキストを実装できます。
<%@ page import="com.example.Direction" %>
...
<p>Direction is <%=foo.direction.getFriendlyName()%></p>
<% if (foo.direction == Direction.ASC) { %>
<p>That means you're going to heaven!</p>
<% } %>
ただし、ビューとモデルを混合しますが、単純な使用ではビューに依存しません(「昇順」、「降順」など)。
単純なJavaをJSPページに配置するのが嫌な場合を除き、比較などの基本的なことを行う場合でも。
他のヒント
enum値を文字列として単純に確認できます:
<c:if test="${foo.direction == 'ASC'}">...
このようにすることができます
<c:set var="ASC" value="<%=Direction.ASC%>"/>
<c:if test="${foo.direction == ASC}"></c:if>
利点は、リファクタリングするときにここでも名前が変更されることです
所属していません StackOverflow