0

別の Web ページから継続的に送信されるアイテムをユーザーが表示できるようにする Web ページを作成しようとしています。

アイテムを表示するためのサンプル コードは次のとおりです。

<h1>View Order</h1>

    <sql:setDataSource dataSource="jdbc/conn"/>
    <sql:query var="results" sql="SELECT item from orders"/>

    <c:choose>
        <c:when test="${results.rowCount == 0}">
            <p class="info">There are no items.</p>
        </c:when>
        <c:otherwise>
            <c:set var="count" value="0" scope="page" />
            <c:forEach var="result" items="${results.rows}">
                 <c:set var="count" value="${count + 1}" scope="page"/>
                <div class="order">
                   <h1>Order number ${count}</h1> <span>${result.item}</span>
                </div>
            </c:forEach>
        </c:otherwise>
    </c:choose>

ページを更新せずにデータを取得することはできますか? 提案とアドバイスをお願いします。ありがとう!

4

1 に答える 1

1

それは可能ですが、JavaScript と AJAX を使用する必要があります。ページがブラウザーに送信されると、サーバーはそれを独自に変更することはできません。ブラウザー自体がサーバーから新しいデータを取得し、それに応じてページを更新する必要があります。そこで AJAX と JavaScript が活躍します。

標準の AJAX を使用する場合は、何か変更があったかどうかを確認するために、定期的にサーバーをポーリングする必要があることに注意してください。

メッセージをサーバーからブラウザーに直接プッシュする方法もありますが、CometD や Atmosphere などのより複雑なテクノロジを使用する必要があります。

于 2013-11-14T13:42:30.327 に答える