Seam 2.2を使用して構築されたWebアプリケーションで、特定の年のユーザを取得する必要があります.Java Enumを使用して、ユーザが選択したフロントエンドでレンダリングする年のリストを作成するのが妥当かどうか疑問に思っていました。おそらくjsf h:selectOneMenuリスト要素の中の1つを選んでください。特定の年にJava Enumを使用してユーザーを取得する必要がありますか?
このようなリストを作成するには、Java Enumを使用することをお勧めしますか?
オプションを保持するために単純なリストを使用する必要がありますか?
特定の要件は、ユーザーが1つを選択するために現在および過去30年間のリストを作成することです。
[] S
私はリストを使って簡単な解決策に行ってきましたコメントで述べたように。 Seamを使用しているので、私はそれを使用しているコードに従います。私はちょうど最後の50年のリストを構築し、それを参照するxhtmlよりも工場を建設しました。
工場コード:
@Factory("listaUltimos50Anos")
public List<Integer> listaUltimos50Anos()
{
ArrayList<Integer> ultimos50Anos = new ArrayList<Integer>();
GregorianCalendar hoje = new GregorianCalendar();
hoje.setTime(new java.util.Date());
int anoAtual = hoje.get(Calendar.YEAR);
for(int i = 0; i <= 50; i++)
{
ultimos50Anos.add(anoAtual);
anoAtual -= 1;
}
return ultimos50Anos;
}
とXHTMLに比べて私はこの工場を参照:
<s:decorate id="dataField" template="../layout/edit.xhtml">
<ui:define name="label">Ano</ui:define>
<h:selectOneMenu id="ano" value="#{carroHome.instance.ano}" required="true">
<s:selectItems var="anos" value="#{listaUltimos50Anos}" label="#{anos}" />
</h:selectOneMenu>
</s:decorate>
[] S
誰が毎年1月1日に列挙型を更新する予定ですか?君は?誰か?最終的な答えはそれに依存するかもしれません。 – BalusC
ここにポイントがあります。これは自動でなければならないので、私はprobです。単純なリストのために行く必要があります。 –