版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、jsp實現(xiàn)分頁顯示的代碼 2011-10-12 14:40:00| 分類: 默認(rèn)分類|字號 訂閱<% page language="java" import="java.util.*" pageEncoding="gb2312"%><% page import="beans.Jobs" %><% page import="beans.Page" %><jsp:useBean id="db" class="beans.ORMD
2、BUtil" scope="page"></jsp:useBean><jsp:useBean id="pager" class="beans.Page" scope="page"></jsp:useBean><% /從數(shù)據(jù)庫中去出結(jié)果集 String sql = "select * from jobs" int currentRecord = 0; ArrayList<Jobs> result = db.select(sql)
3、; pager.setTotalRecord(result.size(); pager.setTotalPage(result.size(),pager.getPageSize(); /計算并設(shè)置分頁的參數(shù) if(request.getParameter("currentRecord")!=null) currentRecord = Integer.parseInt(request.getParameter("currentRecord"); pager.setCurrentRecord(currentRecord); pager.setCurrentP
4、age(currentRecord,pager.getPageSize(); /從結(jié)果集中取出當(dāng)前頁面要顯示的子集 List<Jobs> subResult = null; if(currentRecord = 0) subResult = result.subList(0,pager.getPageSize(); if(pager.getCurrentRecord()+pager.getPageSize()<result.size() subResult = result.subList(pager.getCurrentRecord(),pager.getCurrentRe
5、cord()+pager.getPageSize(); else subResult = result.subList(pager.getCurrentRecord(),result.size();%><html><head> <title>分頁顯示JavaBean使用示例</title></head><body><font size="2"><strong> 本頁面利用JavaBean實現(xiàn)分頁顯示功能:</strong><br> 下面的表格就是運行
6、結(jié)果: </font><table width="387" border="1" height="82"> <tr> <td>job_id</td> <td>job_desc</td> <td>min_lvl</td> <td>max_lvl</td> </tr> <% if(subResult.isEmpty()=false) for(int i=0;i<subResult.si
7、ze();i+) Jobs job = subResult.get(i); out.print("<tr>"); out.print("<td>"+job.getJob_id()+"</td>"); out.print("<td>"+job.getJob_desc()+"</td>"); out.print("<td>"+job.getMin_lvl()+"</td>");
8、 out.print("<td>"+job.getMax_lvl()+"</td>"); out.print("</tr>"); %> </table><span><font size="2">總<%=pager.getTotalRecord()%>條記錄|總<%=pager.getTotalPage()%>頁|當(dāng)前<%=pager.getCurrentPage()+1%>頁|每頁<%=pager
9、.getPageSize()%>條|<% /如果已經(jīng)到了首頁就去掉前一頁的鏈接 if(pager.getCurrentRecord()-pager.getPageSize()<0) out.println("首頁|"); else /上一頁就是把當(dāng)前記錄位置減去一頁顯示記錄的條數(shù) out.print("<a href='Page.jsp?currentRecord="+(pager.getCurrentRecord()-pager.getPageSize()+"&pageSize="+pager
10、.getPageSize()+"'>上一頁</a>|"); /如果到了尾頁就去掉下一頁的鏈接 if(pager.getCurrentRecord()+pager.getPageSize()>pager.getTotalRecord() out.println("尾頁"); else /下一頁就是把當(dāng)前記錄位置加上一頁顯示記錄的條數(shù) out.print("<a href='Page.jsp?currentRecord="+(pager.getCurrentRecord()+pager.get
11、PageSize()+"&pageSize="+pager.getPageSize()+"'>下一頁</a>|"); %></font></span></body></html>package beans;public class Jobs private int job_id; private String job_desc; private int min_lvl; private int max_lvl;public String getJob_desc() r
12、eturn job_desc;public void setJob_desc(String job_desc) this.job_desc = job_desc;public int getJob_id() return job_id;public void setJob_id(int job_id) this.job_id = job_id;public int getMax_lvl() return max_lvl;public void setMax_lvl(int max_lvl) this.max_lvl = max_lvl;public int getMin_lvl() retur
13、n min_lvl;public void setMin_lvl(int min_lvl) this.min_lvl = min_lvl;package beans;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;public class ORMDB
14、Util /* 取得一個數(shù)據(jù)庫連接* * return* throws SQLException* throws InstantiationException* throws IllegalAccessException* throws ClassNotFoundException*/public Connection getConnection() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException Connection conn = null; /加載數(shù)據(jù)庫驅(qū)
15、動類 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance(); /數(shù)據(jù)庫連接URL String url = "jdbc:odbc:xsxx" /數(shù)據(jù)庫用戶名 String user = "" /數(shù)據(jù)庫密碼 String password = "" /根據(jù)數(shù)據(jù)庫參數(shù)取得一個數(shù)據(jù)庫連接 conn = DriverManager.getConnection(url, user, password); return conn; /* * 根據(jù)傳入的SQL語句
16、返回一個對象的鏈表 * param sql * return * throws Exception */public ArrayList select(String sql) throws Exception ArrayList<Jobs> result = new ArrayList<Jobs>(); Connection conn = null; Statement stmt = null; ResultSet rs = null; try conn = getConnection(); stmt = conn.createStatement(); rs = stm
17、t.executeQuery(sql); while (rs.next() /查詢的結(jié)果轉(zhuǎn)化成Jobs對象 Jobs job = new Jobs(); job.setJob_id(rs.getInt("job_id"); job.setJob_desc(rs.getString("job_desc"); job.setMin_lvl(rs.getInt("min_lvl"); job.setMax_lvl(rs.getInt("max_lvl"); /把轉(zhuǎn)換得到的對象加入ArrayList中 result.add
18、(job); catch (SQLException sqle) throw new SQLException("select data exception: " + sqle.getMessage(); catch (Exception e) throw new Exception("System e exception: " + e.getMessage(); finally try if (rs != null) rs.close(); catch (Exception e) throw new Exception("statement
19、close exception: " + e.getMessage(); try if (stmt != null) stmt.close(); catch (Exception e) throw new Exception("statement close exception: " + e.getMessage(); try if (conn != null) conn.close(); catch (Exception e) throw new Exception("connection close exception: " + e.get
20、Message(); return result; public static void main(String args) String sql = "select * from jobs" ORMDBUtil db=new ORMDBUtil(); try ArrayList<Jobs> result = db.select(sql); if(result.isEmpty()=false) for(int i=0;i<result.size();i+) Jobs job = result.get(i); System.out.println(job.g
21、etJob_id(); System.out.println(job.getJob_desc(); System.out.println(job.getMin_lvl(); System.out.println(job.getMax_lvl(); catch(Exception e) System.out.println(e); package beans;public class Page private int totalPage;/總頁數(shù) private int currentPage;/當(dāng)前頁數(shù) private int totalRecord;/總的記錄條數(shù) private int currentRecord;/當(dāng)前記錄的條數(shù) private int pageSize =12;/每頁顯示的記錄數(shù)量,這里默認(rèn)每頁顯示6條public int getCurrentPage() return currentPage;public void setCurrentPage(int currentRecord,int pageSize ) /如果當(dāng)前記錄數(shù)除以每頁顯示條數(shù)可以整除,商就是當(dāng)前的頁碼 if(currentRecord%pageSize = 0) current
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 部門個人工作計劃
- 2024年汽車電子設(shè)備銷售及維修合同3篇
- 2024年版魚塘租賃經(jīng)營協(xié)議模板
- 2024年版離婚雙方權(quán)益保障合同模板版B版
- 小學(xué)教學(xué)計劃二年級
- 居住建筑及公共建筑建設(shè)項目節(jié)能評估報告書
- 2025年中國大黃提取物行業(yè)市場調(diào)研及未來發(fā)展趨勢預(yù)測報告
- 銷售客服工作計劃
- 2022初二語文教學(xué)工作計劃
- 行政文員個人工作報告
- 生理學(xué)基礎(chǔ)(第4版)第十一章 內(nèi)分泌電子課件 中職 電子教案
- 石油化工安裝工程預(yù)算定額(2019版)
- 換熱器的傳熱系數(shù)K
- GB/T 24218.2-2009紡織品非織造布試驗方法第2部分:厚度的測定
- 鑄牢中華民族共同體意識學(xué)習(xí)PPT
- 公司年會小品《老同學(xué)顯擺大會》臺詞劇本手稿
- 獎勵旅游策劃與組織課件
- 雞舍通風(fēng)設(shè)計
- 2020中考英語備考策略
- 廣東省見證取樣規(guī)范
- 資本論重點思考題參考答案
評論
0/150
提交評論