0

サーブレット クラスにオブジェクト (ArrayList を持つモデル) のインスタンスがあります。EL を使用して "jsp" ページでこれにアクセスするにはどうすればよいですか?

これが私がしようとしている方法です

<c:forEach var="module" items="${model}">
    <option name="" value="">${module}</option>
</c:forEach>
4

3 に答える 3

2

データをセッションに入れるのではなく、ビューごとのデータの場合は、サーブレットのメソッドでリクエスト属性として渡します。

request.setAttribute("model", yourModelObject);

このようにして、jspで次のようにアクセスできます。

${model.yourList}

反復は次のようになります。

<c:forEach var="module" items="${model.yourList}">
    ${module}
</c:forEach>
于 2013-03-02T12:10:00.743 に答える
0

arrayList を反復処理したいと思いますか?c:forEach タグでそれを行うことができます

 <c:forEach var="box" items="${**REFERENCE_TO_YOUR_VARIABLE**}"
  varStatus="status">
 </c:forEach>
于 2013-03-02T12:10:26.307 に答える
0

RequestDispatcher.forward(request, response) を使用してサーブレットからディスパッチする場合は、セッション属性ではなくリクエスト属性として追加して、オブジェクトの古いインスタンスを防ぎ、オブジェクトが長時間ぶらぶらするのを防ぐことができます。必要以上に。あなたの質問の2番目の部分について。ArrayList がモデル オブジェクトの変数である場合、el での参照は次のように行われます。

${model.list}

たとえば、オブジェクトが「model」という名前のリクエスト属性として保存され、オブジェクトに getList() メソッドがある場合、そのリストを反復するには、次のようにします。

<c:forEach items="${model.list}" var="listItem" >
于 2013-03-02T12:14:02.780 に答える