好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識(shí)庫 > jsp讀取數(shù)據(jù)庫實(shí)現(xiàn)分頁技術(shù)簡析

jsp讀取數(shù)據(jù)庫實(shí)現(xiàn)分頁技術(shù)簡析

熱門標(biāo)簽:四川正規(guī)外呼系統(tǒng)軟件 汝南縣地圖標(biāo)注app 湖北地圖標(biāo)注公司 福建電銷貓機(jī)器人收費(fèi) 地圖標(biāo)注專業(yè)和非專業(yè) 甘肅銷售電銷機(jī)器人公司 智能電話機(jī)器人銷售話術(shù) 外呼直播語音系統(tǒng) 山東ai外呼電銷機(jī)器人好用嗎
這篇文章介紹的是用javabean和jsp頁面來實(shí)現(xiàn)數(shù)據(jù)的分頁顯示,例子中所使用的數(shù)據(jù)庫是Mysql。

1、先看javabean
類名:
databaseBean.java:
以下為databaseBean.java的代碼:
復(fù)制代碼 代碼如下:

package database_basic;
import java.sql.*;
import java.util.*;
public class databaseBean
{
//這是默認(rèn)的數(shù)據(jù)庫連接方式
private String DBLocation="jdbc:mysql://localhost/onestoptech?user=rootpassword=passworduseUnicode=truecharacterEncoding=GB2312";
private String DBDriver="org.gjt.mm.mysql.Driver";
private Connection conn=null;
public databaseBean(){}
//通過set方法可以靈活設(shè)置數(shù)據(jù)庫的連接
public void setDBLocation(String location){DBLocation=location;}
public void setDBDriver(String driver){DBDriver=driver;}
public void setconn(Connection conn){this.conn=conn;}
public String getDBLocation(){return(DBLocation);}
public String getDBDriver(){return(DBDriver);}
public Connection getconn(){return(conn);}
/*public String DBConnect(){}
public String DBDisconnect(){}
public ResultSet query(String sql){}
public int getTotalPage(String sql,int pageSize){}
public ResultSet getPagedRs(String sql,int pageSize,int pageNumber){}
public String execute_sql(String sql){}*/
//建立連接
public String DBConnect()
{
String strExc="Success!";//strExc默認(rèn)為Success,如果有例外拋出,即數(shù)據(jù)庫連接不成功,則下面幾個(gè)catch中被賦予其他拋出信息
try
{
Class.forName(DBDriver);
conn=DriverManager.getConnection(DBLocation);
}
catch(ClassNotFoundException e)
{
strExc="數(shù)據(jù)庫驅(qū)動(dòng)沒有找到,錯(cuò)誤提示:br>" +e.toString();
}
catch(SQLException e)
{
strExc="sql語句錯(cuò)誤,錯(cuò)誤提示br>" +e.toString();
}
catch(Exception e)
{
strExc="錯(cuò)誤提示:br>" +e.toString();
}
return (strExc);
}//then end of DBConnect
//斷開連接
public String DBDisconnect()
{
String strExc="Success!";//strExc默認(rèn)為Success,如果有例外拋出,即數(shù)據(jù)庫斷開連接不成功,則下面幾個(gè)catch中被賦予其他拋出信息
try
{
if(conn!=null)conn.close();
}
catch(SQLException e)
{
strExc=e.toString();
}
return (strExc);
}
//通過傳入sql語句來返回一個(gè)結(jié)果集
public ResultSet query(String sql) throws SQLException,Exception
{
ResultSet rs=null;
if (conn==null)
{
DBConnect();
}
if (conn==null)
{
rs=null;
}
else
{
try
{
Statement s=conn.createStatement();
rs=s.executeQuery(sql);
}
catch(SQLException e){throw new SQLException("Cound not execute query.");}
catch(Exception e){throw new Exception("Cound not execute query.");}
}//then end of if
return(rs);
}//then end of the function executeQuery
//通過傳入sql語句和pageSize(每頁所顯示的結(jié)果數(shù)目)計(jì)算并返回總共的頁數(shù)
public int getTotalPage(String sql,int pageSize)
{
ResultSet rs=null;
int totalRows=0;
if (conn==null)
{
DBConnect();
}
if (conn==null)
{
rs=null;
}
else
try
{
Statement s=conn.createStatement();
rs=s.executeQuery(sql);//通過傳入的sql得到結(jié)果集
while(rs.next())
totalRows++;//讓rs一個(gè)個(gè)數(shù),數(shù)完一遍,通過totalRows++也就計(jì)算出了返回結(jié)果集中總的條目數(shù)
}
catch(SQLException e){}
rs=null;
//由這個(gè)算法得出總頁數(shù)(totalRows-1)/pageSize+1,并返回結(jié)果。totalRows是指返回結(jié)果集中的總的條目數(shù),pageSize是指每頁顯示的條目數(shù)
return((totalRows-1)/pageSize+1);
}
//通過傳入sql語句,每頁顯示的條目數(shù)(pageSize)和頁碼,得到一個(gè)結(jié)果集
public ResultSet getPagedRs(String sql,int pageSize,int pageNumber)
{
ResultSet rs=null;
int absoluteLocation;
if (conn==null)
{
DBConnect();
}
if (conn==null)
{
rs=null;
}
else
try
{
Statement s=conn.createStatement();
//pageSize*pageNumber每頁顯示的條目數(shù)乘以頁碼,計(jì)算出最后一行結(jié)果的編號(hào),任何編號(hào)大于這個(gè)maxrows的結(jié)果都會(huì)被drop
s.setMaxRows(pageSize*pageNumber);
rs=s.executeQuery(sql);
}
catch(SQLException e){}
//absoluteLocation=pageSize*(pageNumber-1)這個(gè)表達(dá)式計(jì)算出上一頁最后一個(gè)結(jié)果的編號(hào)(如果有本頁的話,上一頁的顯示的結(jié)果條目數(shù)肯定是pageSize)
absoluteLocation=pageSize*(pageNumber-1);
try
{
//這個(gè)for循環(huán)的作用是讓結(jié)果集rs定位到本頁之前的最后一個(gè)結(jié)果處
for(int i=0;iabsoluteLocation;i++)
{
rs.next();
}
}
catch(SQLException e) { }
//此時(shí)返回的結(jié)果集被兩頭一夾,就是該頁(pageNumber)要顯示的結(jié)果
return(rs);
}
public String execute_sql(String sql){
String strExc;
strExc="Success!";
if(conn!=null)
{
try{
PreparedStatement update;
update=conn.prepareStatement(sql);
update.execute();
}
catch(SQLException e)
{
strExc=e.toString();
}
catch(Exception e)
{
strExc=e.toString();
}
}
else
{
strExc="Connection Lost!";
}
return(strExc);
}//execute_sql

2、分析jsp頁面
頁面名稱:
admin_show.jsp
頁面代碼:
復(fù)制代碼 代碼如下:

%@ page errorPage="error.jsp"%>
%@ page contentType="text/html;charset=gb2312"%>
%@ page import="java.util.*"%>
%@ page import="java.sql.*"%>
//導(dǎo)入database_basic包下面的databaseBean類,別名是basicDB
jsp:useBean id="basicDB" class="database_basic.databaseBean" scope="page"/>
%
String sql;
ResultSet rs;
int id;
String reply,Exc;
Exc=basicDB.DBConnect();//建立連接,若成功,則返回Success!若失敗,則返回相應(yīng)出錯(cuò)信息
if(!Exc.equals("Success!"))
{
//basicDB.DBDisconnect();
throw new Exception(Exc);
}
int pageSize=10; //定義每頁顯示的數(shù)據(jù)條數(shù)
int currentPage=1; //當(dāng)前頁(第一次顯示的肯定是第一頁啦!~),以后的“當(dāng)前頁”由下面出現(xiàn)的頁面中的pages參數(shù)傳入
int allPage=-1;
String pages=request.getParameter("pages");//取得頁面中pages參數(shù),此參數(shù)代表的頁面的就是要顯示的“當(dāng)前頁面”
if(pages!=null) currentPage=Integer.valueOf(pages).intValue();//這是一個(gè)Integer型轉(zhuǎn)int型的例子,第一次執(zhí)行這個(gè)頁面的時(shí)候,pages這個(gè)參數(shù)是null,currentPage=1;當(dāng)再次執(zhí)行這個(gè)頁面的時(shí)候,參數(shù)pages將被賦值,currentPage=pages的int值
sql="select * from gbook order by id desc";//這樣返回的結(jié)果集會(huì)采用desc降序排列,好處是,顯示在前面的是最新的信息
allPage=basicDB.getTotalPage(sql,pageSize);//得到總頁碼數(shù)
rs=basicDB.getPagedRs(sql,pageSize,currentPage);//得到當(dāng)前頁面要顯示的結(jié)果集
%>
table border="0" cellspacing="1" cellpadding="3" width="590" bgcolor="#ffffff">
%
while(rs.next()){
id=rs.getInt("id");//得到數(shù)據(jù)庫(結(jié)果集)中id編號(hào)
%>
tr bgcolor="#FF6600" style="color:white">
td >Name:%=rs.getString("leaver")%>/td>
td >Time:%=rs.getString("leave_date")%>/td>
td >Email:%=rs.getString("email")%>/td>
td >div style="width:150;overflow:hidden;">Home:%=rs.getString("homepage")%>/div>/td>
/tr>
tr bgcolor="#FFE3B9">
td colspan=4>FONT COLOR="#FF6600">Content:/FONT>BR>BR>%=rs.getString("content")%> /td>
/tr>
%}%>
tr>td height="1">/td>/tr>
tr>
td colspan=4 align=right bgcolor="#FF6600" style="color:white;">
現(xiàn)在是第%=currentPage%>頁,
%if(currentPage>1){%>
!--如果不在第一頁,則顯示出“首頁”鏈接-->
A HREF="admin_show.jsp?pages=%=(currentPage-1)%>">首頁/A>
%}
for(int i=1;i=allPage;i++)
{
//顯示出1、2、3、4……到最后一頁的鏈接
out.println("a href=admin_show.jsp?pages="+i+">"+i+"/a>");
}
%>
%if(currentPageallPage){%>
!--如果不在最后一頁,則顯示出“末頁”鏈接-->
A HREF="admin_show.jsp?pages=%=(currentPage+1)%>">末頁/A>
%}%>/td>
/tr>
/table>
}//then end of the class

3、總結(jié)
這個(gè)實(shí)現(xiàn)分頁顯示的程序中,有幾個(gè)算法和實(shí)現(xiàn)方法是比較固定且經(jīng)典的,對沒寫過分頁程序的人來說,應(yīng)該有所啟發(fā)。
您可能感興趣的文章:
  • jsp分頁顯示的實(shí)現(xiàn)代碼
  • JSP分頁顯示的實(shí)例代碼
  • 一個(gè)實(shí)用的JSP分頁代碼
  • jsp hibernate的分頁代碼
  • JSP實(shí)現(xiàn)的簡單分頁示例
  • JSP自定義分頁標(biāo)簽TAG全過程
  • 一個(gè)通用的jsp分頁P(yáng)ageBean
  • jsp+servlet+javabean實(shí)現(xiàn)數(shù)據(jù)分頁方法完整實(shí)例
  • jsp分頁顯示完整實(shí)例
  • 簡單實(shí)現(xiàn)JSP分頁顯示效果

標(biāo)簽:臨沂 昌都 南充 白銀 吳忠 肇慶 梅州 黔東

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《jsp讀取數(shù)據(jù)庫實(shí)現(xiàn)分頁技術(shù)簡析》,本文關(guān)鍵詞  jsp,讀取,數(shù)據(jù)庫,實(shí)現(xiàn),分頁,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《jsp讀取數(shù)據(jù)庫實(shí)現(xiàn)分頁技術(shù)簡析》相關(guān)的同類信息!
  • 本頁收集關(guān)于jsp讀取數(shù)據(jù)庫實(shí)現(xiàn)分頁技術(shù)簡析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 太粗太硬小寡妇受不了视频| 伦理片80s电影网在线| 天天插夜夜操| 国产喂奶300部| 日本熟妇无码亚洲成aV人片榴莲 | 日女人逼逼| 极品华裔白嫩与洋男友| 真人人体做爰视频| 日本一级特黄毛片可以免费看吗| ?国产精品嫩草77AV麻酥酥| 欧美性xxxxx极品瑜伽free| 美女露出胸100%无遮挡| FreeXXXbabes性欧美| 国内揄拍国内精品人妻试看| 男生和女生一起差差差的所有| 国产无遮挡免费观看视频| 99re8这里只有的精品e68| 好大好硬?用力?深一点日本| 永久免费视频毛片| www.黄色网.com| 一本大道熟女人妻中文字幕在线| 巨乳电影| 日韩亚洲欧洲在线com91tv| 99热这里只精品99re66mitun| 男女爽爽爽| 成免费 crm 特色 vip| 无码国产69精品久久久久同性 | 久久久久久精品国产观看2010 | 山东直男粗大猛1打桩| 小尤奈私拍视频在线观看| 免费观看无遮挡www的视频| 91亚洲精品国产自在现线| 师生办公室play高H| 波多野结衣人妻教师 6| 善良的小峓子HD中字3D漫画 | 日本一二三高清| 男女猛烈啪啪无遮挡激烈 | 国产精品美女挤奶汁视频| 篱笆女人和井电视剧全集50多集| 亚洲电影一区| 女裸全身无奶罩内裤内衣|