0
我在我的Struts基本應用程序中使用displaytag 1.0。我有500萬行,通過分頁顯示50條記錄,顯示所有行數據的報告。它需要5分鐘來渲染數據。我們可以減少這個嗎?請建議如何在一分鐘內完成。緩慢使用顯示標籤將數據呈現到表格中liabrery
我在我的Struts基本應用程序中使用displaytag 1.0。我有500萬行,通過分頁顯示50條記錄,顯示所有行數據的報告。它需要5分鐘來渲染數據。我們可以減少這個嗎?請建議如何在一分鐘內完成。緩慢使用顯示標籤將數據呈現到表格中liabrery
它正在將完整的數據庫應用到Java的內存中,而不是僅感興趣的數據(當前頁面)。您需要在DAO級別引入基於請求的分頁。
首先,在你的DAO類中做一個SELECT stuff FROM data LIMIT firstrow OFFSET rowcount
或類似的東西取決於使用的數據庫。然後在JSP中使用JSTL c:forEach
或Struts的logic:iterate
幫助您創建一個HTML表格。在input type="hidden"
元素的背景中保留一個或兩個請求參數:要顯示的第一行(第一行)以及最終要一次顯示的行數(行數)。最後提供一組按鈕,指示服務器端代碼每次輸入rowcount
以減少firstrow
。只要做數學。
你可以找到更詳細的答案here。