nowpage 默認(rèn)是 request 作用范圍的 在作為 servlet類里 應(yīng)該 request.setRequest("nowpage",相應(yīng)大變量);
朝陽(yáng)縣網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)建站成立與2013年到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
jsp中分頁(yè)最快捷的辦法是用分頁(yè)組件:
分頁(yè)組件代碼使用taglib實(shí)現(xiàn)的:
%@ tag language="java" pageEncoding="UTF-8"%
%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c"%
%@ attribute name="curIndex" type="java.lang.Long" required="true"%
%@ attribute name="pageSize" type="java.lang.Long" required="true"%
%@ attribute name="pagerRange" type="java.lang.Long" required="true"%
%@ attribute name="totalPage" type="java.lang.Long" required="true"%
%@ attribute name="formId" type="java.lang.String" required="true"%
%
long begin = Math.max(1, curIndex - pagerRange/2);
long end = Math.min(begin + (pagerRange-1),totalPage);
request.setAttribute("p_begin", begin);
request.setAttribute("p_end", end);
%
table class="pager"
tr
% if (curIndex!=1){%
tda href="javascript:gotoPage(1)"首頁(yè)/a/td
tda href="javascript:gotoPage(%=curIndex-1%)"上一頁(yè)/a/td
%}else{%
td class="disabled"a href="#"首頁(yè)/a/td
td class="disabled"a href="#"上一頁(yè)/a/td
%}%
c:forEach var="i" begin="${p_begin}" end="${p_end}"
c:choose
c:when test="${i == curIndex}"
td class="active"a href="#"${i}/a/td
/c:when
c:otherwise
tda href="javascript:gotoPage(${i})"${i}/a/td
/c:otherwise
/c:choose
/c:forEach
% if (curIndex!=totalPage){%
tda href="#"下一頁(yè)/a/td
tda href="#"末頁(yè)/a/td
%}else{%
td class="disabled"a href="javascript:gotoPage(%=curIndex+1%)"下一頁(yè)/a/td
td class="disabled"a href="javascript:gotoPage(%=totalPage%)"末頁(yè)/a/td
%}%
tda共${totalPage}頁(yè)/a/td
td class="input_li"跳轉(zhuǎn)到:input type="text" id="p_pageIndex" size="2" value="c:out value="${pageIndex}"/"/頁(yè) input type="button" id="gotoBtn" onclick="gotoPageByBtn()" value="GO"http://td
td class="input_li" 每頁(yè):
select id="p_pageSizeSelect" onchange="gotoPage(%=curIndex%)"
option value="10" c:if test="${pageSize==10}"selected/c:if10條/option
option value="20" c:if test="${pageSize==20}"selected/c:if20條/option
option value="50" c:if test="${pageSize==50}"selected/c:if50條/option
/select
/td
/tr
/table
jsp中使用方法:
%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c"%
%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt"%
%@ taglib tagdir="/WEB-INF/tags" prefix="tags"%
head
style!--分頁(yè)樣式--
.pager { font: 12px Arial, Helvetica, sans-serif;}
.pager a {padding: 1px 6px; border: solid 1px #ddd; background: #fff; text-decoration: none;margin-right:2px;line-height:30px;vertical-align:middle;}
.pager .active a{color:red;border:none;}
.pager a:visited {padding: 1px 6px; border: solid 1px #ddd; background: #fff; text-decoration: none;}
.pager a:hover {color: #fff; background: #ffa501;border-color:#ffa501;text-decoration: none;}
.pager .input_li{padding: 1px 6px;}
/style
script!--分頁(yè)跳轉(zhuǎn)腳本--
function gotoPage(pageIndex){
var queryForm = document.getElementById("queryForm");
var action = queryForm.action;
var pageSize = document.getElementById("p_pageSizeSelect").value;
action += "?pageIndex=" + pageIndex + "pageSize=" + pageSize;
//alert(action);
queryForm.action = action;
queryForm.submit();
}
function gotoPageByBtn(){
var pageIndex = document.getElementById("p_pageIndex").value;
var pageIndexInt = parseInt(pageIndex);
var totalPage = ${totalPage};
if(pageIndexInt0 pageIndexInttotalPage){
gotoPage(pageIndex);
}
else{
alert("輸入頁(yè)數(shù)超出范圍!");
}
}
/script
/head
body
form id="queryForm" action="${basePath}/log/list" method="post"
table
tr
td用戶名:/td
tdinput type="text" name="userName" value="c:out value="${userName}"/"/ /td
tdinput type="submit" text="查詢"http://td
/tr
/table
/form
tags:pager pagerRange="10" pageSize="${pageSize}" totalPage="${totalPage}" curIndex="${pageIndex}" formId="queryForm"/tags:pager
table class="border"
thead
tr
th width="100"用戶名稱/th
th width="500"操作內(nèi)容/th
th width="200"操作時(shí)間/th
/tr
/thead
tbody
c:forEach items="${logList}" var="log"
tr
td${log.userName}/td
td${log.result}/td
td
fmt:formatDate value="${log.createTime}" pattern="yyyy-MM-dd HH:mm:ss"/
/td
/tr
/c:forEach
/tbody
/table
tags:pager pagerRange="10" pageSize="${pageSize}" totalPage="${totalPage}" curIndex="${pageIndex}" formId="queryForm"/tags:pager
/body
page類
public class PageModel {
private int totalCount = 0;// 總記錄數(shù)
private int pageCount;// 總頁(yè)數(shù)
private int pageSize = 10;// 每頁(yè)顯示記錄數(shù)
private int page = 1;// 當(dāng)前頁(yè)
private int num = 5;// 當(dāng)前頁(yè)之前和之后顯示的頁(yè)數(shù)個(gè)數(shù) 如:假設(shè)當(dāng)前頁(yè)是 6 共有11頁(yè) 那么 顯示分頁(yè)條會(huì)顯示 1 2 3 4
// 5 [6] 7 8 9 10 11
@SuppressWarnings("unchecked")
private List items = new ArrayList();// 當(dāng)前頁(yè)記錄內(nèi)容集合
private int prev;// 前一頁(yè)
private int next;// 后一頁(yè)
private int last;// 最后一頁(yè)
private ListInteger prevPages;// 得到前num頁(yè)的數(shù)據(jù)集合
private ListInteger nextPages;// 得到后num頁(yè)的數(shù)據(jù)集合
/**
* 計(jì)算總頁(yè)數(shù)
*
* @param totalCount
*/
public void setTotalCount(int totalCount) {
if (totalCount 0) {
this.totalCount = totalCount;
this.pageCount = (totalCount + pageSize - 1) / pageSize;
}
}
/**
* 判斷是否有前一頁(yè)
*
* @return boolean
*/
public boolean getIsPrev() {
if (page 1) {
return true;
}
return false;
}
/**
* 獲取前一頁(yè)
*
* @return int
*/
public int getPrev() {
if (getIsPrev()) {
return page - 1;
} else {
return page;
}
}
/**
* 判斷是否有后一頁(yè)
*
* @return boolean
*/
public boolean getIsNext() {
if (page pageCount) {
return true;
}
return false;
}
/**
* 獲取后一頁(yè)
*
* @return int
*/
public int getNext() {
if (getIsNext()) {
return page + 1;
}
return getPageCount();
}
/**
* 獲取最后一頁(yè)
*
* @return int
*/
public int getLast() {
return pageCount;
}
/**
* 當(dāng)前頁(yè)的前num條頁(yè) 假設(shè)當(dāng)前頁(yè)是 6 共有11頁(yè) 如:1 2 3 4 5
*
* @return ListInteger
*/
public ListInteger getPrevPages() {
ListInteger list = new ArrayListInteger();
int _frontStart = 1;
if (page num) {
_frontStart = page - num;
} else if (page = num) {
_frontStart = 1;
}
for (int i = _frontStart; i page; i++) {
list.add(i);
}
return list;
}
/**
* 當(dāng)前頁(yè)的后num條頁(yè) 假設(shè)當(dāng)前頁(yè)是 6 共有11頁(yè) 如:7 8 9 10 11
*
* @return ListInteger
*/
public ListInteger getNextPages() {
ListInteger list = new ArrayListInteger();
int _endCount = num;
if (num pageCount (page + num) pageCount) {
_endCount = page + _endCount;
} else if ((page + num) = pageCount) {
_endCount = pageCount;
}
for (int i = page + 1; i = _endCount; i++) {
list.add(i);
}
return list;
}
/**
* 獲取每頁(yè)顯示記錄數(shù)
*
* @return int
*/
public int getPageSize() {
return pageSize;
}
/**
* 設(shè)置每頁(yè)顯示記錄數(shù)
*
* @param pageSize
*/
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
/**
* 得到當(dāng)前頁(yè)數(shù)
*
* @return int
*/
public int getPage() {
return page;
}
/**
* 設(shè)置當(dāng)前頁(yè)數(shù)
*
* @param page
*/
public void setPage(int page) {
this.page = page;
}
/**
* 獲取當(dāng)前頁(yè)之前或之后顯示的頁(yè)數(shù)個(gè)數(shù)
*
* @return int
*/
public int getNum() {
return num;
}
/**
* 設(shè)置當(dāng)前頁(yè)之前或之后顯示的頁(yè)數(shù)個(gè)數(shù)
*
* @param num
*/
public void setNum(int num) {
this.num = num;
}
/**
* 獲取當(dāng)前頁(yè)記錄內(nèi)容集合
*
* @return List
*/
@SuppressWarnings("unchecked")
public List getItems() {
return items;
}
/**
* 設(shè)置當(dāng)前頁(yè)記錄內(nèi)容集合
*
* @param items
*/
@SuppressWarnings("unchecked")
public void setItems(List items) {
this.items = items;
}
/**
* 獲取總記錄數(shù)
*
* @return int
*/
public int getTotalCount() {
return totalCount;
}
/**
* 得到總頁(yè)數(shù)
*
* @return int
*/
public int getPageCount() {
return pageCount;
}
}
action代碼:
PageModel pageModel = new PageModel();
// 獲得當(dāng)前頁(yè)
if (page != 0) {
pageModel.setPage(page);
}
pageModel.setPageSize(10);// 設(shè)置頁(yè)面顯示最大 值
pageModel.setTotalCount(baseDAO.listAll("from Art where arttype.id=10 and mark=0 order by id desc")); // 數(shù)據(jù)總條數(shù)
pageModel.setNum(5); // 設(shè)置當(dāng)前頁(yè)的前后距離,/**前后各顯示5頁(yè)**/
// 通過當(dāng)前頁(yè)和
ListArt aboutList = baseDAO.listAll("from Art where arttype.id=10 and mark=0 order by id desc", pageModel.getPage(),pageModel.getPageSize());
pageModel.setItems(aboutList);
request.setAttribute("count", aboutList.size());// 放置在request中
request.setAttribute("pageModel", pageModel);
request.setAttribute("page", pageModel.getPage());
jsp代碼
c:forEach var = "i" items="${requestScope.pageModel.items}" varStatus="items"
li/li
/c:forEach
div class="badoo"span class="disabled"第${pageModel.page}頁(yè)/共${pageModel.pageCount}頁(yè)/span a href="${pageuri}page=1"首頁(yè)/a
c:if test="${pageModel.page1}"
a href="${pageuri}page=${pageModel.prev}"上一頁(yè)/a
/c:if
c:forEach var="pre" items="${pageModel.prevPages }"
a href="${pageuri}page=${pre }"${pre}/a
/c:forEach
span class="current"${pageModel.page }/span
c:forEach var="next" items="${pageModel.nextPages }"
a href="${pageuri}page=${next }"${next}/a
/c:forEach
c:if test="${pageModel.pagepageModel.last}"
a href="${pageuri}page=${pageModel.next}"下一頁(yè)/a
/c:if
a href="${pageuri}page=${pageModel.last}"尾頁(yè)/a/div
如有不懂可以找我QQ聊
jsp用c標(biāo)簽實(shí)現(xiàn)分頁(yè)的方式如下:
%@?tag?language="java"?pageEncoding="UTF-8"%
%@?taglib?uri="/WEB-INF/tld/c.tld"?prefix="c"%
%@?attribute?name="curIndex"?type="java.lang.Long"?required="true"%
%@?attribute?name="pageSize"?type="java.lang.Long"?required="true"%
%@?attribute?name="pagerRange"?type="java.lang.Long"?required="true"%
%@?attribute?name="totalPage"?type="java.lang.Long"?required="true"%
%@?attribute?name="formId"?type="java.lang.String"?required="true"%
%
long?begin?=?Math.max(1,?curIndex?-?pagerRange/2);
long?end?=?Math.min(begin?+?(pagerRange-1),totalPage);
request.setAttribute("p_begin",?begin);
request.setAttribute("p_end",?end);
%
table?class="pager"
tr
?%?if?(curIndex!=1){%
tda?href="javascript:gotoPage(1)"首頁(yè)/a/td
tda?href="javascript:gotoPage(%=curIndex-1%)"上一頁(yè)/a/td
%}else{%
td?class="disabled"a?href="#"首頁(yè)/a/td
td?class="disabled"a?href="#"上一頁(yè)/a/td
%}%
c:forEach?var="i"?begin="${p_begin}"?end="${p_end}"
c:choose
c:when?test="${i?==?curIndex}"
td?class="active"a?href="#"${i}/a/td
/c:when
c:otherwise
tda?href="javascript:gotoPage(${i})"${i}/a/td
/c:otherwise
/c:choose
/c:forEach
?? ?%?if?(curIndex!=totalPage){%
tda?href="#"下一頁(yè)/a/td
tda?href="#"末頁(yè)/a/td
%}else{%
td?class="disabled"a?href="javascript:gotoPage(%=curIndex+1%)"下一頁(yè)/a/td
td?class="disabled"a?href="javascript:gotoPage(%=totalPage%)"末頁(yè)/a/td
%}%
tda共${totalPage}頁(yè)/a/td
td?class="input_li"跳轉(zhuǎn)到:input?type="text"?id="p_pageIndex"?size="2"?value="c:out?value="${pageIndex}"/"/頁(yè)?input?type="button"?id="gotoBtn"?onclick="gotoPageByBtn()"?value="GO"http://td
?td?class="input_li"nbsp;每頁(yè):
?select?id="p_pageSizeSelect"?onchange="gotoPage(%=curIndex%)"
? option?value="10"?c:if?test="${pageSize==10}"selected/c:if10條/option
? option?value="20"?c:if?test="${pageSize==20}"selected/c:if20條/option
? option?value="50"?c:if?test="${pageSize==50}"selected/c:if50條/option
?/select
?/td
/tr
/table
控制分頁(yè)的代碼如下
%@?taglib?uri="/WEB-INF/tld/c.tld"?prefix="c"%
%@?taglib?uri="/WEB-INF/tld/fmt.tld"?prefix="fmt"%
%@?taglib?tagdir="/WEB-INF/tags"?prefix="tags"%
head
style!--分頁(yè)樣式--
.pager?{?font:?12px?Arial,?Helvetica,?sans-serif;}
.pager?a?{padding:?1px?6px;?border:?solid?1px?#ddd;?background:?#fff;?text-decoration:?none;margin-right:2px;line-height:30px;vertical-align:middle;}
.pager?.active?a{color:red;border:none;}
.pager?a:visited?{padding:?1px?6px;?border:?solid?1px?#ddd;?background:?#fff;?text-decoration:?none;}
.pager?a:hover?{color:?#fff;?background:?#ffa501;border-color:#ffa501;text-decoration:?none;}
.pager?.input_li{padding:?1px?6px;}
/style
script!--分頁(yè)跳轉(zhuǎn)腳本--
function?gotoPage(pageIndex){
var?queryForm?=?document.getElementById("queryForm");
var?action?=?queryForm.action;
var?pageSize?=?document.getElementById("p_pageSizeSelect").value;
action?+=?"?pageIndex="?+?pageIndex?+?"pageSize="?+?pageSize;
//alert(action);
queryForm.action?=?action;
queryForm.submit();
}
function?gotoPageByBtn(){
var?pageIndex?=?document.getElementById("p_pageIndex").value;
var?pageIndexInt?=?parseInt(pageIndex);
var?totalPage?=?${totalPage};
if(pageIndexInt0??pageIndexInttotalPage){
gotoPage(pageIndex);
}
else{
alert("輸入頁(yè)數(shù)超出范圍!");
}
}
/script
/head
body
form?id="queryForm"?action="${basePath}/log/list"?method="post"
table
tr
td用戶名:/td
tdinput?type="text"?name="userName"?value="c:out?value="${userName}"/"/nbsp;/td
tdinput?type="submit"?text="查詢"http://td
/tr
/table
/form
tags:pager?pagerRange="10"?pageSize="${pageSize}"?totalPage="${totalPage}"?curIndex="${pageIndex}"?formId="queryForm"/tags:pager
table?class="border"
thead
tr
th?width="100"用戶名稱/th
th?width="500"操作內(nèi)容/th
th?width="200"操作時(shí)間/th
/tr
/thead
tbody
c:forEach?items="${logList}"?var="log"
tr
td${log.userName}/td
td${log.result}/td
td
fmt:formatDate?value="${log.createTime}"?pattern="yyyy-MM-dd?HH:mm:ss"/
/td
/tr
/c:forEach
/tbody
/table
tags:pager?pagerRange="10"?pageSize="${pageSize}"?totalPage="${totalPage}"?curIndex="${pageIndex}"?formId="queryForm"/tags:pager
/body
網(wǎng)站欄目:javajsp分頁(yè)代碼 java做分頁(yè)
文章鏈接:http://muchs.cn/article6/ddcjsog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、ChatGPT、動(dòng)態(tài)網(wǎng)站、定制開發(fā)、網(wǎng)站設(shè)計(jì)、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)