分頁是 Web 應用基礎功能。本文提供一套可複用的 JSP 分頁解決方案,包含資料庫連線類、核心分頁邏輯類、JSP 調用範例與 CSS 樣式,支援自定義每頁筆數、頁碼組大小、多語言文字與圖示化導航,適合中小型專案快速集成。
.dh_pages 系列類別美化分頁 UI。RowCount,計算總頁數 PageCountinRow,拼接 LIMIT 子句執行查詢PageLs~PageRsgetRs() 返回當前頁 ResultSet<%
MysqlPages DBPages = new MysqlPages();
DBPages.setPageSize(10);
DBPages.setPageRows(4); // 偶數最佳,含當前頁實際顯示 5 個
DBPages.setLang_first_page("<img src='../themes/start.gif' border=0>");
DBPages.setSql("SELECT * FROM admin");
DBPages.setPage(request.getParameter("page"));
String pageInfos = DBPages.pageInfo();
ResultSet rs = DBPages.getRs();
%>
<%=pageInfos%>
<% while(rs.next()){ %>
<%=rs.getString("admin_id")%> <%=rs.getString("admin_user")%><br>
<% } %>
優點:零依賴、邏輯集中、高度可配、支援多組頁碼顯示模式。
缺點:業務邏輯與視圖耦合、直接拼接 SQL 有注入風險、使用 Scriptlet 違反現代 MVC 規範。
建議:遷移至 TagLib 或 JSTL/EL 輸出,採用 PreparedStatement 參數化查詢,或引入成熟分頁庫。但對於維護舊專案或快速原型,本方案仍具參考價值。