2

のようなプロパティを呼び出す必要があります${bean.data1A}が、プロパティ名の数字は変数です。のようなものですが、n == 1 の場合に${bean.data{$n}A}評価されます。どうすればこれを達成できますか?${bean.data1A}

次のようなプロパティがたくさんあります。

${bean.data1A}
${bean.data2A}
${bean.data3A}
etc

古い JSP サーバーを使用する必要があるため、Bean からパラメーター化されたメソッドを呼び出すことができないためです。


更新:この理由については、Bean からのデータを表示するデータのグリッド (18 または 27 行と 7 列) があります。この Bean にはベクトルがあり、各要素には行のデータを保持するオブジェクトが含まれます (特定の行の a、b、c、d、e、f、および g は、ベクター)。

グリッドを使用するには、必要な数のセルを変更してから、[すべて更新] ボタンをクリックします。行番号の変数として ${n} を使用したい理由は、表示されているデータの年に基づいて行数が変わるためです。現在、${n} 変数を使用して、グリッドの行ラベルに正しい行番号を出力しています

4

1 に答える 1

4

EL の中かっこ表記[]を使用して、静的文字列の代わりに変数をプロパティ名として使用できます。JSTL を使用<c:set>して、EL スコープで新しい変数を作成できます。

したがって、すべての場合、これは次のようにする必要があります。

<c:set var="property" value="data${n}A" />
<c:out value="${bean[property]}" />
于 2013-04-03T18:20:51.343 に答える