当前位置:  编程技术>java/j2ee

jsp读取数据库实现分页技术简析

    来源: 互联网  发布时间:2014-10-18

    本文导语:  这篇文章介绍的是用javabean和jsp页面来实现数据的分页显示,例子中所使用的数据库是Mysql。 1、先看javabean 类名: databaseBean.java: 以下为databaseBean.java的代码: 代码如下: package database_basic; import java.sql.*; import java.util.*; public cla...

这篇文章介绍的是用javabean和jsp页面来实现数据的分页显示,例子中所使用的数据库是Mysql。

1、先看javabean
类名:
databaseBean.java:
以下为databaseBean.java的代码:
代码如下:

package database_basic;
import java.sql.*;
import java.util.*;
public class databaseBean
{
//这是默认的数据库连接方式
private String DBLocation="jdbc:mysql://localhost/onestoptech?user=root&password=password&useUnicode=true&characterEncoding=GB2312";
private String DBDriver="org.gjt.mm.mysql.Driver";
private Connection conn=null;
public databaseBean(){}
//通过set方法可以灵活设置数据库的连接
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默认为Success,如果有例外抛出,即数据库连接不成功,则下面几个catch中被赋予其他抛出信息
try
{
Class.forName(DBDriver);
conn=DriverManager.getConnection(DBLocation);
}
catch(ClassNotFoundException e)
{
strExc="数据库驱动没有找到,错误提示:
" +e.toString();
}
catch(SQLException e)
{
strExc="sql语句错误,错误提示
" +e.toString();
}
catch(Exception e)
{
strExc="错误提示:
" +e.toString();
}
return (strExc);
}//then end of DBConnect
//断开连接
public String DBDisconnect()
{
String strExc="Success!";//strExc默认为Success,如果有例外抛出,即数据库断开连接不成功,则下面几个catch中被赋予其他抛出信息
try
{
if(conn!=null)conn.close();
}
catch(SQLException e)
{
strExc=e.toString();
}
return (strExc);
}
//通过传入sql语句来返回一个结果集
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(每页所显示的结果数目)计算并返回总共的页数
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得到结果集
while(rs.next())
totalRows++;//让rs一个个数,数完一遍,通过totalRows++也就计算出了返回结果集中总的条目数
}
catch(SQLException e){}
rs=null;
//由这个算法得出总页数(totalRows-1)/pageSize+1,并返回结果。totalRows是指返回结果集中的总的条目数,pageSize是指每页显示的条目数
return((totalRows-1)/pageSize+1);
}
//通过传入sql语句,每页显示的条目数(pageSize)和页码,得到一个结果集
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每页显示的条目数乘以页码,计算出最后一行结果的编号,任何编号大于这个maxrows的结果都会被drop
s.setMaxRows(pageSize*pageNumber);
rs=s.executeQuery(sql);
}
catch(SQLException e){}
//absoluteLocation=pageSize*(pageNumber-1)这个表达式计算出上一页最后一个结果的编号(如果有本页的话,上一页的显示的结果条目数肯定是pageSize)
absoluteLocation=pageSize*(pageNumber-1);
try
{
//这个for循环的作用是让结果集rs定位到本页之前的最后一个结果处
for(int i=0;i

首页


    
 
 

您可能感兴趣的文章:

  • jsp 标准标签库简析
  • jsp中怎样读取jsp的绝对路径
  • 怎样用JSP将从树状存储结构中读取的数据在JSP页面上生成一个树状目录
  • 为什么JSP读取Access数据时,不能完全显示完整的数据?
  • 关于JSP中文件读取(急!!!!)
  • jsp可以用相对路径读取同目录中的文件吗?
  • JSP读取文件实例
  • jsp在客户端只能读取服务器上的文件?100分
  • jsp读取oracle8.1.6数据表中的中文,读出为?,着急啊。
  • 如何用Jsp读取Mysql数据库
  • 如何用jsp读取数据库中的二进制图象
  • 初学,如何用JSP读取中文。
  • jsp读取数据库中子短的错误。急!!!在线等待!!!给分!!!
  • $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$在jsp中怎么保存/读取一个cookie??
  • jsp 从web.xml读取连接数据库的参数
  • 怎么在jsp中读取服务器时间并且将它放到access数据库中?
  • 请问我在jsp里要读取其它网站上的xml的内容应该如何处理?
  • 在jsp中如何读取文本文件中的字符?急!
  • jsp文件操作之读取篇
  • 小妹求教!!关于jsp操作oracle数据库操作的问题(文件读取,插入数据库表相应字段中)
  • jsp读取大对象CLOB并生成xml文件示例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • jsp显示server数据库的内容,如何实现定时更新jsp页面
  • 帮帮新手,jsp面向对象吗?想把c/s结构的引用用jsp改写,交互功能可以实现吗
  • 一个框界网爷包含上下两个网页a1.jsp和a2.jsp,怎么实现a1.jsp自身不变且提交数据到下面的a2.jsp呢?不胜感激,急..
  • 请问在jsp中如何实现相对路径?我在jsp文件中指定相对路径的文件,可是程序找不到!
  • 怎么用Jsp实现在页面实现树型结构?
  • ******"Servlet根据JSP视图的需求生成JavaBeans的实例并输出给JSP环境"如何实现上面这句话的效果??*******
  • 在ASP中可以轻易实现,不知道在JSP中能否实现?
  • jsp显示server数据库的内容,如何实现定时更新jsp页面 iis7站长之家
  • 在JSP中如何实现重新定向到其他页面?
  • 在JSP中如何实现MD5加密?
  • 怎么实现jsp中的页面跳转
  • JSP调用EJB如何实现耦合度最底
  • JSP的SESSION能存贮数组吗?我想实现“购物车”功能?
  • 〔help〕有关JSP实现注册用户中的类型问题?
  • 求助:用JSP实现统计来访人数,请问怎样实现?
  • 调试jsp的时如何实现像asp中的response.end的效果
  • 在jsp 中如何实现像asp 中的页面弹出式的菜单
  • ****怎样在局域网里实现JSP的访问!!!!******************
  • jsp实现点击help打开chm文件
  • JSP中如何实现动态select选项框?
  • JSP中清空cookie代码参考
  • 现有1.jsp、2.jsp、3.jsp三个文件,我怎么在3.jsp文件中得到1.jsp中输入的值?
  • 请问jsp和serlet之间怎么通讯,jsp和jsp之间呢?
  • 请问<%@include file="abc.jsp"%>与<jsp:include page="abc.jsp"/>之间的差别
  • response.sendRedirect("index.jsp") 和 <jsp:forward page="index.jsp"/>的区别?
  • 想把一个jsp转到另一个jsp页面,要穿参数,中文的(jsp变量)。谁教教我?!
  • aaa.jsp有如下链接,当单击该链接时将id值传递给bbb.jsp,怎样在bbb.jsp中引用这个id值?
  • jsp+bean还是jsp+ejb还是jsp+servlet还是asp+activex好?
  • 谁能告诉我,怎么调试jsp程序呀!我在jsp中调用java,但是Tomcat这家伙只会给我报jsp文件出错。这可怎么办呀?
  • jsp中如何获得当前jsp文件所在的目录,用request.getServletPath()得到的路径含有jsp文件名,有没有办法得到目录(不含文件名)?
  • 初学jsp,一个html调用一个jsp,这个jsp调用一个javaBean,已编译成类,最后如何部署(用j2sdkee)?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3