2013-02-23 124 views
0

我正在使用spring mvc。一个下拉式X基于枚举。我想根据下拉式X更改下拉列表Y.我应该如何处理第二个下拉式Y.我应该使用枚举吗?该列表不会经常更改,因此我不打算使用数据库。我想知道这个好习惯。下拉式变化取决于另一个下拉菜单

即使我使用枚举。我如何定义这个变量应该产生这个列表。

回答

1

在我的实践中,我使用了这种场景。你可以定义Y列表也是一个枚举。原因枚举是类您可以在枚举常量之间实现依赖关系行为,具体取决于它们之间的关系(我的意思是一对多,多对多...),您可以通过提供特定的X常量来初始化它Y常量通过X构造函数列出。

例如,在许多一对多的关系,您可以使用以下策略

enum X{ 
    A("1", "A", Y.D, Y.E), 
    B("2", "B", Y.D, Y.F), 
    C("3", "C", Y.D, Y.E, Y.F); 

    private String id; 
    private String name; 
    private List<Y> dependencies = new ArrayList<Y>(); 

    private X(String id, String name, Y... dependencies){ 
     this.id = id; 
     this.name = name; 

     for(Y dep : dependencies){ 
      this.dependencies.add(dep); 
     } 
    } 

    public String getId() { 
     return id; 
    } 

    public String getName() { 
     return name; 
    } 

    public List<Y> getDependencies(){ 
     return Collections.unmodifiableList(dependencies); 
    } 
} 

enum Y{ 
    D(), 
    E(), 
    F(); 

    private Y(){} 
} 
+0

你能告诉我一个例子,请 – user510783 2013-02-24 14:16:13

+0

我已经编辑了后,你可以按照这个策略 – 2013-02-24 19:26:34

相关问题