mysql bean分页查询_jsp+java bean+mysql数据库进行分页显示

原来没有写过,听朋友说,比较难,就试一下,还是挺简单的,只不过,具体实用方面还得自己写,没有什么难的,自己看看就懂了。

bean文件:

package bean;

/**

* jsp+java bean+mysql数据库进行分页显示

* 这里连接的数据库是MYSQL

* 表的情况是test数据库中的test表,建表用语句create table test(id int,name char(50),age int)

* 用所得的结果进行分页显示

*/

import java.sql.*;

import java.util.Vector;

public class Conn {

/**

* 生成数据库连接

* @return

*/

public int resultPage;//用于取得最后是第几页的内容,因为给的要显示的页可能大于所有的页数,这时就要调整.

public int totalPage;

public Connection getConn()

{

Connection C=null;

try {

Class.forName("org.gjt.mm.mysql.Driver").newInstance();

C= DriverManager.getConnection("jdbc:mysql://localhost/test?user=root&password=admin&useUnicode=true&characterEncoding=8859_1");

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return C;

}

public void doDel(int ID)

{

Connection con=getConn();

try {

Statement st=con.createStatement();

st.execute("delete from test where id="+ID);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

/**

* 根据查询条件,将查询结果以Vector的形式返回

* @param pageSize 每页显示的记录条数

* @param currentPage 当前是第几页

* @param sql sql查询语句

* @return

*/

public Vector getResult(int pageSize,int currentPage,String sql)

{

int rowNum=0;

int page=0;

int beginRow=0;

Vector resultRows=new Vector();

try{

Statement st=getConn().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

ResultSet rs=st.executeQuery(sql);

rs.last();

rowNum=rs.getRow();

if(rowNum%pageSize==0)

{

page=rowNum/pageSize;

}

else

page=rowNum/pageSize+1;

if(currentPage>page)

{

currentPage=page;

}

if(currentPage<1)

{

currentPage=1;

}

resultPage=currentPage;

totalPage=page;

beginRow=(currentPage-1)*pageSize+1;

//System.out.println("beginRow:"+beginRow);

rs.absolute(beginRow);

int i=1;

while(!rs.isAfterLast() && i<=pageSize)

{

Vector v=new Vector();

v.add(rs.getInt(1));

v.add(rs.getString(2));

v.add(rs.getInt(3));

resultRows.add(v);

i++;

rs.next();

}

//System.out.println("PageSize:"+pageSize);

//System.out.println("Total Page:"+page);

}

catch(Exception e)

{

e.printStackTrace();

}

return resultRows;

}

public static void main(String[] arg)

{

Conn c=new Conn();

Vector vector=c.getResult(5,2,"select * from test");

for(int i=0;i

{

Vector v=new Vector();

v=(Vector)vector.elementAt(i);

//System.out.print(v.elementAt(0)+" ");

//System.out.print(v.elementAt(1)+" ");

//System.out.println(v.elementAt(2));

}

//System.out.println(Integer.parseInt(""));

}

}

JSP测试文件:

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

My JSP 'index.jsp' starting page

This is my JSP page.

String request_page_s=request.getParameter("page");

int request_page;

int pageSize=3;

try{

if(request_page_s.length()==0)

request_page=1;

else

request_page=Integer.parseInt(request_page_s);

}

catch(Exception e)

{

request_page=1;

}

Vector vector=xxx.getResult(pageSize,request_page,"select * from test");

for(int i=0;i

{

Vector v=(Vector)vector.elementAt(i);

out.print(v.elementAt(0)+" ");

out.print(v.elementAt(1)+" ");

out.print(v.elementAt(2)+"
");

}

out.print("首页 ");

int p_page=0;

int n_page=0;

if(xxx.resultPage==1)

p_page=1;

else

p_page=xxx.resultPage-1;

if(xxx.resultPage==xxx.totalPage)

n_page=xxx.resultPage;

else

n_page=xxx.resultPage+1;

out.print("上页 ");

out.print("下页 ");

out.print("末页 ");

%>

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2007-06-24 17:33

浏览 758

评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值