簡體   English   中英

JSP / JSTL如何提高使用c:forech的速度

[英]JSP/JSTL how to improve speed of using c:forech

我已經開始查看Web應用程序中存在一些性能問題的頁面。 這是一個使用JSP的Spring MVC應用程序。 有一個部分,其內容如下:

 <c:forEach items="${people}" var="person">
     //A number of <form:input>s bound to "person" in here
 </c:foreach>

隨着“人數”的增加,這似乎呈現得非常緩慢。 迭代的數量甚至不必太快就可以變慢。 我可以看到頁面逐個加載每個輸入塊。

我在嘗試確定瓶頸是什么,我認為這似乎只是for循環的本質很慢。

如果我執行以下操作:

<div with some style><input></div>
//Copy this 8000 times

該頁面呈現速度非常快。 但是以下內容:

<c:forEach var="i" begin="1" end="8000">
<div with some style><input></div>
</c:foreach>

渲染緩慢。

我想我有點疑惑,因為似乎它是將每個迭代發送到客戶端進行渲染,而不是構建HTML,然后一次發送全部? (也許我錯了嗎?)

有沒有辦法使加載速度更快? 為JSP設置一些預編譯會更快嗎(盡管我不確定如何在運行時確定$ {people})?

您使用分頁。 所有編程都使用延遲加載。 延遲加載是計算機編程中常用的一種設計模式,用於將對象的初始化推遲到需要它的時間點。 如果使用得當,可以提高程序運行的效率。 延遲加載的相反是渴望加載。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM