JSP入门 分页

时间:2022-12-02 14:29:44
        <div> <% 
    Integer pageNo = (Integer) request.getAttribute("pageNo");     Integer count = (Integer) request.getAttribute("count");     Integer pageCount = count / 5 + 1;     if (pageNo == 1) { %
 
<span class="unuse">[第一页]</span>             <span class="unuse">[上一页]</span> <% 
    } else { %> 
            <span><a href="?pageNo=1">[第一页]</a></span> 
            <span><a href="?pageNo=<%=pageNo - 1%>">[上一页]</a></span> <%     } %> <% 
    for (int i = 1; i <= pageCount; i++) {         if (i == pageNo) { %> 
            <span class="currentPage"><%=i%></span> <% 
        } else { %> 
            <span><a href="?pageNo=<%=i%>"><%=i%></a></span> <%         }     } %> <% 
    if (pageNo == pageCount) { %> 
            <span class="unuse">[下一页]</span>             <span class="unuse">[最后一页]</span> <% 
    } else { %> 
            <span><a href="?pageNo=<%=pageNo + 1%>">[下一页]</a></span>             <span><a href="?pageNo=<%=pageCount%>">[最后一页]</a></span> <%     } %> 
            <form style="display:inline;">                 <select name="pageNo"> <% 
    for (int i = 1; i <= pageCount; i++) { %> 
                    <option value="<%=i%>" <%=(i == pageNo ? "selected" : "")%>><%=i%></option> <%     } %> 
                </select> 
                <input type="submit" value="go" />             </form>         </div>

1.数据库分页

所谓的分页,就是要查询的数据太多了,一次性显示出来的话,既不容易查看也影响性能。

// 获得当前页码 
int pageNo = 1; 
try { 
     pageNo = Integer.parseInt(request.getParameter("pageNo")); 
} catch(Exception ex) {  } 
 if (pageNo < 1) {      pageNo = 1;  } 
 request.setAttribute("pageNo", pageNo);

这里pageNo代表当前的页码,如果没有传递pageNo参数,默认显示第一页,为此我们在解析request中参数时要捕获对应的异常,如果没有输入或者参数不是一个数字时pageNo就还是等于1

JSP页面:

            <form style="display:inline;">                 <select name="pageNo"> <% 
    for (int i = 1; i <= pageCount; i++) { %> 
                    <option value="<%=i%>" <%=(i == pageNo ? "selected" : "")%>><%=i%></option> <%     } %> 
                </select> 
                <input type="submit" value="go" />             </form>