日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

很好的分页实例代码(JSP)

發布時間:2025/6/15 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 很好的分页实例代码(JSP) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1:首先創建數據庫鏈接類,我的博客前面有源碼 2:創建封裝你要分頁的那個數據庫表的Bean 3:封裝實現分頁功能的功能Bean 具體代碼見下:

import java.util.ArrayList;
import java.sql.*;

public class PageBean {

????private int curPage = 1; //當前是第幾頁
????private int maxPage; //一共有多少頁
????private int maxRowCount; //一共有多少行
????public int rowsPerPage = 10; //每頁多少行

????Connection conn;
????public ArrayList data;

????public PageBean() throws Exception {
????????this.setPageBean();
????}
????public int getCurPage() {
????????return curPage;
????}

????public int getMaxPage() {
????????return maxPage;
????}

????public int getMaxRowCount() {
????????return maxRowCount;
????}

????public int getRowsPerPage() {
????????return rowsPerPage;
????}

????public void setCurPage(int curPage) {
????????this.curPage = curPage;
????}

????public void setMaxPage(int maxPage) {
????????this.maxPage = maxPage;
????}

????public void setMaxRowCount(int maxRowCount) {
????????this.maxRowCount = maxRowCount;
????}

????public void setRowsPerPage(int rowsPerPage) {
????????this.rowsPerPage = rowsPerPage;
????}

????//得到要顯示于本頁的數據
????public PageBean getResult(String page) throws Exception {
????????try {
????????????PageBean pageBean = new PageBean();
????????????ArrayList list = new ArrayList();
????????????int pageNum = Integer.parseInt(page);
????????????Statement stmt = conn.createStatement();
????????????String strSql = "select top " + pageNum * pageBean.rowsPerPage +
????????????????????????????" * from employee";//改成你的表
????????????ResultSet rset = stmt.executeQuery(strSql);
????????????int i = 0;
????????????while (rset.next()) {

????????????????????//這里要和表的字段對應起來!!!!
????????????????????Employee item=new Employee();
????????????????????item.setEmp_id(rset.getString("emp_id"));
????????????????????item.setFname(rset.getString("fname"));
????????????????????item.setMinit(rset.getString("minit"));
????????????????????item.setLname(rset.getString("lname"));
????????????????????item.setJob_id(rset.getInt("job_id"));
????????????????????item.setJob_lvl(rset.getInt("job_lvl"));
????????????????????item.setPub_id(rset.getString("pub_id"));
????????????????????item.setHire_date(rset.getString("hire_date"));
????????????????????list.add(item);

????????????????i++;
????????????}
????????????ConnectionManager.closeResultSet(rset);
????????????ConnectionManager.closeStatement(stmt);
????????????pageBean.setCurPage(pageNum);
????????????pageBean.data = list;
????????????return pageBean;
????????} catch (Exception e) {
????????????e.printStackTrace();
????????????throw e;

????????}
????}
????//獲取總行數
????public int getAvailableCount() throws Exception {
????????int ret = 0;
????????conn = ConnectionManager.getConnection();
????????Statement stmt = conn.createStatement();
????????String strSql = "select * from employee";//改成你的表
????????ResultSet rset = stmt.executeQuery(strSql);
????????while (rset.next()) {
????????????ret++;
????????}
????????return ret;
????}
????//初始化時對PageBean進行設置
????public void setPageBean() throws Exception {

????????//得到總行數
????????this.setMaxRowCount(this.getAvailableCount());

????????if (this.maxRowCount % this.rowsPerPage == 0) { //根據總行數計算總頁數
????????????this.maxPage = this.maxRowCount / this.rowsPerPage;
????????} else {
????????????this.maxPage = this.maxRowCount / this.rowsPerPage + 1;
????????}
????}

}

?

4:建立中間中轉的Servlet? PageServlet: 代碼如下:

public void init() throws ServletException {
??}

??//Process the HTTP Get request
??public void doGet(HttpServletRequest request, HttpServletResponse response) throws
??????ServletException, IOException {
????try
??????{
????????????PageBean page1=new PageBean();
????????????PageBean page2=page1.getResult((String)request.getParameter("jumpPage"));

??????????????//把PageBean保存到request對象中。注意:viewpage.jsp里jsp:useBean id必須為才可以"page2"!!!
??????????????request.setAttribute("page2",page2);
??????}
??????catch(Exception e)
??????{
??????????????e.printStackTrace();
??????}

??????????/**
???????*把視圖派發到viewForum.jsp
???????*/
??????javax.servlet.RequestDispatcher dis=request.getRequestDispatcher("viewpage.jsp");
??????dis.forward(request,response);

?}

5:現在建立現實JSP頁面 viewpage.jsp:

<%@ page contentType="text/html; charset=GBK" import="java.util.*,pagetest.Employee" %>
<jsp:useBean id="page2" scope="request" class="pagetest.PageBean"/>
<script language="JavaScript" type="text/JavaScript">
function Jumping(){
??document.PageForm.submit();
??return ;
}

function gotoPage(pagenum){
??document.PageForm.jumpPage.value = pagenum;
??document.PageForm.submit();
??return ;
}
</script>
<html>
<head>
<title>
分頁功能
</title>
</head>
<body bgcolor="#ffffff">
<table border="1">
<%
String s=String.valueOf(page2.getCurPage());
try{
ArrayList list=page2.getResult(s).data;
for(int i=0;i<list.size();i++){
??Employee emp=(Employee)list.get(i);
%>
<tr>
<td><%=emp.getEmp_id()%></td>
<td><%=emp.getFname()%></td>
<td><%=emp.getHire_date()%></td>
<td><%=emp.getJob_id()%></td>
<td><%=emp.getJob_lvl()%></td>
<td><%=emp.getLname()%></td>
<td><%=emp.getMinit()%></td>
<td><%=emp.getPub_id()%></td>
</tr>
<%
?}
}catch(Exception e){}
%>
</table>
<%if(page2.getMaxPage()!=1){ %>
<form name="PageForm" action="pageservlet" method="post">
每頁
<%=page2.rowsPerPage%>


<%=page2.getMaxRowCount()%>


<%=page2.getCurPage()%>


<%=page2.getMaxPage()%>
<BR>
<%
??if (page2.getCurPage() == 1) {
????out.print(" 首頁 上一頁");
??}
??else {
%>
<a HREF="javascript:gotoPage(1)">首頁</A>
<a HREF="javascript:gotoPage(<%=page2.getCurPage()-1%>)">上一頁</A>
<%}%>
<%
??if (page2.getCurPage() == page2.getMaxPage()) {
????out.print("下一頁 尾頁");
??}
??else {
%>
<a HREF="javascript:gotoPage(<%=page2.getCurPage()+1%>)">下一頁</A>
<a HREF="javascript:gotoPage(<%=page2.getMaxPage()%>)">尾頁</A>
<%}%>
轉到第
<SELECT name="jumpPage" onchange="Jumping()">
<%
??for (int i = 1; i <= page2.getMaxPage(); i++) {
????if (i == page2.getCurPage()) {
%>
??<OPTION selected value="<%=i%>"><%=i%> </OPTION>
<%} else {%>
??<OPTION value="<%=i%>"><%=i%> </OPTION>
<%}
??}%>
</SELECT>

</form>
<%}%>
</body>
</html>

?

現在運行 就可以看到效果

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的很好的分页实例代码(JSP)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。