2012-08-24 261 views
0

我有一个枚举键和像下面的描述。在JSP中,我将获得值,并且我想要显示描述。JSP中的枚举描述

public enum STATUS { 
    ACTIVE("A", "Active"), 
    INACTIVE("I","Inactive"), 
    PENDING("PND","Pending"); 

private final String value; 
    private final String description; 

    public String getValue() { 
     return value; 
    } 
    public String getDescription() { 
     return description; 
    } 
    STATUS(String value, String description) { 
     this.value=value; 
     this.description = description; 
    } 

    public static STATUS fromValue(String value) { 
     if (value != null) { 
      for (STATUS status : values()) { 
       if (status.value.equals(value)) { 
        return status; 
       } 
      } 
     } 
     return getDefault(); 
    } 
} 
+1

精确地定义“*如何与此继续?*” – Lion

+0

究竟你的意思是“让什么价值”? –

回答

2

因为你已经有一个有效的兼容JavaBean的getter方法,你可以访问它通常Javabean的方式。

${status.description} 

或者如果它是作为另一的JavaBean属性引用,那么这样做

${order.status.description} 
+0

我会从其他对象(Aobj)获取值为“A”,STATUS枚举为其他对象,我没有任何对象(Aobj)中的STATUS引用。 – changeme

+0

为什么你的'Aobj'中为'String''“A”'而不是'Status'' ACTIVE'?那里有一些设计错误。只需用'Status'替换'String',这个问题就会消失,其他一切都会立即变得容易得多。 – BalusC

+0

我当然同意,在你说这是设计问题后,我纠正了自己,并能够得到描述。 – changeme