您的位置:首页 > 数据库 > MySQL

以最简单的方式实现jsp+mysql分页

2010-03-25 21:22 357 查看
刚开始弄 ,目前分页是在前台jsp中实现的 与bean相比 这样比较容易一些

先把代码贴出来 正在研究怎么样用bean实现分页等弄好了 再贴代码

下面说下分页理论 select * from message order by time desc limit begin,size

begin 数据记录从第几条开始begin=(当前页数-1)*size

size 每页的记录数

下面是连接数据库的javabean;

[code] package bean;


import java.sql.*;




public class MyDb{


 private Statement stmt;


 private Connection conn=null;


 privateResultSet rs=null;


 


 public void connection(String db_name,String user,String pwd) throwsException{


 Class.forName("com.mysql.jdbc.Driver");


 String url="jdbc:mysql://localhost:3306/" + db_name;


 conn=DriverManager.getConnection(url,user,pwd);


 stmt=conn.createStatement();


}


 


 public ResultSet query(String sql) throws Exception{


 rs=stmt.executeQuery(sql);


 return rs;


}


 


 public ResultSet query(String sql,int begin,int size) throws Exception{


 String s=" limit " + begin + "," +size;


 sql=sql + s;


 rs=stmt.executeQuery(sql);


 return rs;


}




 


 public int update(String sql) throwsException{


 int n=0;


 n=stmt.executeUpdate(sql);


 return n;


}


 


 public boolean delete(String sql) throwsException{


 0ff">boolean flag=false;


 flag=stmt.execute(sql);


 return flag;


}


}

[/code]

下面是jsp的代码;

[code] <jsp:useBean id="db" class="bean.MyDb" scope="page" />


<%


 int page_count;//总页数


 int p;//当前面号


 int size=3;//每页记录数


 int result_count;//总记录数


 int begin;//当前页第一条记录索引号


ResultSet rs=null;


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


 if(page_s==null)page_s="1";


db.connection("test","root","root");


String sql="select count(*) from message";


rs=db.query(sql);


rs.next();


result_count=rs.getInt(1);


page_count=(result_count + size - 1)/size;


p=Integer.parseInt(page_s);


 out.println("总记录数为:" + result_count + " 每页记录数为:" + size + " 总页数为:" + page_count + " 当前是第" + p + "页");


sql="select * from message order by time desc";


begin=(p-1)*size;


rs=db.query(sql,begin,size);


while(rs.next()){


%>


<table>


<tr>


 <tdwidth="200"><%=rs.getString(1)%></td>


<td width="200"><%=rs.getString(2)%></td>


</tr>


<tr>


<td><%=rs.getString(3)%></td>


<td><%=rs.getString(4)%></td>


</tr>


<tr><td colspan="2"><%=rs.getString(5)%></td></tr>


<tr><td colspan="2"><hr /></td></tr>


</table>


<%


}


 if(p>1)out.println("<a href=test.jsp?page=" + (p-1) + ">上一页</a>");


 if(p<page_count)out.println("<a href=test.jsp?page=" + (p+1) + ">下一页</a>");


%>

[/code]

-----------------------------------------------------------------------------------------------------------------

代码很粗糙, 将就着看吧但是很适合新手学习.. 完全是自己写的..

等把bean写好了 传上来大家分享.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: