刚开始弄 ,目前分页是在前台jsp中实现的 与bean相比 这样比较容易一些
先把代码贴出来 正在研究怎么样用bean实现分页 等弄好了 再贴代码
下面说下分页理论 select * from message order by time desc limit begin,size
begin 数据记录从第几条开始 begin=(当前页数-1)*size
size 每页的记录数
下面是连接数据库的javabean;
1: package bean;
<!--CRLF-->
2: import java.sql.*;
<!--CRLF-->
3:
<!--CRLF-->
4: public class MyDb{
<!--CRLF-->
5: private Statement stmt;
<!--CRLF-->
6: private Connection conn=null;
<!--CRLF-->
7: private ResultSet rs=null;
<!--CRLF-->
8:
<!--CRLF-->
9: public void connection(String db_name,String user,String pwd) throws Exception{
<!--CRLF-->
10: Class.forName("com.mysql.jdbc.Driver");
<!--CRLF-->
11: String url="jdbc:mysql://localhost:3306/" + db_name;
<!--CRLF-->
12: conn=DriverManager.getConnection(url,user,pwd);
<!--CRLF-->
13: stmt=conn.createStatement();
<!--CRLF-->
14: }
<!--CRLF-->
15:
<!--CRLF-->
16: public ResultSet query(String sql) throws Exception{
<!--CRLF-->
17: rs=stmt.executeQuery(sql);
<!--CRLF-->
18: return rs;
<!--CRLF-->
19: }
<!--CRLF-->
20:
<!--CRLF-->
21: public ResultSet query(String sql,int begin,int size) throws Exception{
<!--CRLF-->
22: String s=" limit " + begin + "," +size;
<!--CRLF-->
23: sql=sql + s;
<!--CRLF-->
24: rs=stmt.executeQuery(sql);
<!--CRLF-->
25: return rs;
<!--CRLF-->
26: }
<!--CRLF-->
27:
<!--CRLF-->
28:
<!--CRLF-->
29: public int update(String sql) throws Exception{
<!--CRLF-->
30: int n=0;
<!--CRLF-->
31: n=stmt.executeUpdate(sql);
<!--CRLF-->
32: return n;
<!--CRLF-->
33: }
<!--CRLF-->
34:
<!--CRLF-->
35: public boolean delete(String sql) throws Exception{
<!--CRLF-->
36: boolean flag=false;
<!--CRLF-->
37: flag=stmt.execute(sql);
<!--CRLF-->
38: return flag;
<!--CRLF-->
39: }
<!--CRLF-->
40: }
<!--CRLF-->
下面是jsp的代码;
1: <jsp:useBean id="db" class="bean.MyDb" scope="page" />
<!--CRLF-->
2: <%
<!--CRLF-->
3: int page_count; //总页数
<!--CRLF-->
4: int p; //当前面号
<!--CRLF-->
5: int size=3; //每页记录数
<!--CRLF-->
6: int result_count; //总记录数
<!--CRLF-->
7: int begin; //当前页第一条记录索引号
<!--CRLF-->
8: ResultSet rs=null;
<!--CRLF-->
9: String page_s=request.getParameter("page");
<!--CRLF-->
10: if(page_s==null) page_s="1";
<!--CRLF-->
11: db.connection("test","root","root");
<!--CRLF-->
12: String sql="select count(*) from message";
<!--CRLF-->
13: rs=db.query(sql);
<!--CRLF-->
14: rs.next();
<!--CRLF-->
15: result_count=rs.getInt(1);
<!--CRLF-->
16: page_count=(result_count + size - 1)/size;
<!--CRLF-->
17: p=Integer.parseInt(page_s);
<!--CRLF-->
18: out.println("总记录数为:" + result_count + " 每页记录数为:" + size + " 总页数为:" + page_count + " 当前是第" + p + "页");
<!--CRLF-->
19: sql="select * from message order by time desc";
<!--CRLF-->
20: begin=(p-1)*size;
<!--CRLF-->
21: rs=db.query(sql,begin,size);
<!--CRLF-->
22: while(rs.next()){
<!--CRLF-->
23: %>
<!--CRLF-->
24: <table>
<!--CRLF-->
25: <tr>
<!--CRLF-->
26: <td width="200"><%=rs.getString(1)%></td>
<!--CRLF-->
27: <td width="200"><%=rs.getString(2)%></td>
<!--CRLF-->
28: </tr>
<!--CRLF-->
29: <tr>
<!--CRLF-->
30: <td><%=rs.getString(3)%></td>
<!--CRLF-->
31: <td><%=rs.getString(4)%></td>
<!--CRLF-->
32: </tr>
<!--CRLF-->
33: <tr><td colspan="2"><%=rs.getString(5)%></td></tr>
<!--CRLF-->
34: <tr><td colspan="2"><hr /></td></tr>
<!--CRLF-->
35: </table>
<!--CRLF-->
36: <%
<!--CRLF-->
37: }
<!--CRLF-->
38: if(p>1) out.println("<a href=test.jsp?page=" + (p-1) + ">上一页</a>");
<!--CRLF-->
39: if(p<page_count) out.println("<a href=test.jsp?page=" + (p+1) + ">下一页</a>");
<!--CRLF-->
40: %>
<!--CRLF-->
-----------------------------------------------------------------------------------------------------------------
代码很粗糙, 将就着看吧 但是很适合新手学习.. 完全是自己写的..
等把bean写好了 传上来大家分享.
分享到:
相关推荐
### jsp+mysql 制作简单的留言板知识点解析 #### 一、项目背景与目标功能 在本案例中,我们探讨如何使用JSP结合MySQL数据库来创建一个简单的留言板系统。留言板的主要功能包括允许访客留言及分页查看留言,并且提供...
### Struts2与MySQL分页实现详解 #### 一、背景与目的 随着Web应用的不断发展,用户对于信息展示的需求也越来越高。为了更好地管理和展示大量数据,分页技术成为了一个不可或缺的功能。本文将详细介绍如何利用...
开发者可以在JSP页面中混合HTML、CSS和Java代码,以实现动态数据的展示和用户交互。 2. **Servlet**:Servlet是JavaEE中的一个核心组件,用于处理HTTP请求并生成响应。在购物车系统中,Servlet扮演着控制层的角色,...
**MySQL分页** MySQL数据库提供了`LIMIT`和`OFFSET`关键字,用于在查询结果中获取特定范围的数据,从而实现分页。例如,如果我们有一个名为`users`的表,我们可以用以下SQL语句获取第一页(每页显示10条记录): `...
JSP是由Java Servlet技术衍生而来,它允许开发人员在HTML页面中嵌入Java代码,以实现动态内容的生成。JSP文件会被服务器转换成Servlet,然后由Servlet引擎执行。基本的JSP结构包括指令元素(directives)、脚本元素...
本项目采用`jsp`(JavaServer Pages)、`servlet`和`json`技术实现了最基本的分页功能,对于初学者来说是一个很好的学习实例。下面将详细解释这个项目中涉及的技术和实现原理。 **1. JSP (JavaServer Pages)** JSP...
本教程将围绕“jsp servlet 简单分页实现”这一主题展开,介绍如何在Java Web项目中实现分页功能。 首先,我们需要了解分页的基本概念。分页通常涉及两个主要参数:当前页数和每页显示的记录数。用户可以通过点击...
真分页则是数据库原生支持的分页方式,例如Oracle、MySQL等数据库提供了特定的分页函数或语法。在真分页中,只需要查询与当前页相关的数据,避免了无谓的数据加载,从而提高了程序性能。Oracle可以使用ROWNUM伪列...
在本文中,我们将探讨如何在Struts2中实现与MySQL数据库的分页功能。分页对于大型数据集的显示至关重要,因为它允许用户逐步浏览信息,提高用户体验并减轻服务器负载。 首先,我们需要几个关键组件来实现分页。在...
总结来说,Java连接MySQL数据库并通过JSP实现分页功能涉及以下几个关键步骤:配置JDBC驱动,建立数据库连接,编写SQL查询,处理分页逻辑,以及在JSP中展示数据和创建导航链接。这些基础知识是构建Web应用程序的重要...
最后,在JSP页面中展示查询结果,并提供导航链接以实现分页效果。 ```jsp ; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <title>User List <h2>User List <th>Name <th>Email ...
在JavaWeb开发中,分页功能是不可或缺的一部分,特别...总之,实现JavaWeb中的MySQL分页功能,需要结合后端的SQL查询和前端的页面链接处理。通过合理的数据库设计和优化,可以有效地提高用户体验,同时减轻服务器压力。
在IT行业中,尤其是在Web开发领域,分页是一个非常常见的需求,尤其当...在JavaBean中,我们可以编写方法来封装这些SQL,以实现动态分页。在实际项目开发中,还需要考虑到用户体验和代码的可扩展性,合理设计分页逻辑。
这是最基础的分页方法,通过在SQL查询语句中添加`LIMIT`和`OFFSET`或`ROWNUM`(根据数据库类型)来实现。例如,在MySQL中,可以这样写: ```sql SELECT * FROM table LIMIT start, pageSize; ``` 其中,`start`...
一种常见的实现方式是不直接使用数据库的分页功能,而是通过计算跳过多少条记录(OFFSET)和每页显示多少条记录(MAXLINE)来实现。首先,执行一个SQL查询来获取总记录数,然后根据总记录数和每页记录数计算出总页数...
本教程将重点讲解如何在JSP(JavaServer Pages)中实现分页,包括页面刷新分页和无刷新分页,同时会涉及到MySQL数据库的使用以及Eclipse开发环境。 一、页面刷新分页 页面刷新分页是最传统的分页方法,当用户点击...
这种分页实现方式简化了数据库操作,避免了一次性加载所有数据导致的性能问题。但是,需要注意的是,如果数据量非常大,仍然需要考虑优化,例如使用预编译的SQL语句(PreparedStatement)以提高效率,或者引入更高级...
本实例将介绍如何利用Java和JSP实现一个简单的分页显示功能。 首先,我们需要理解分页的基本原理。分页通常涉及到两个关键参数:当前页码(currentPage)和每页显示的条目数量(pageSize)。通过这两个参数,我们...
本篇将详细介绍如何基于原生的MySQL JDBC实现一个简单的分页组件,这对于初学者理解数据库操作和分页原理非常有帮助。 1. **JDBC基础**: JDBC是Java访问数据库的标准接口,它提供了连接数据库、执行SQL语句、处理...
在本实验报告中,我们将深入探讨如何使用JSP(JavaServer Pages)技术连接到MySQL数据库,构建一个简单的在线留言板系统。这个系统允许用户提交留言,同时管理员可以查看和管理这些留言。通过这个实验,我们可以了解...