rendered paste body<%@ page import="java.sql.Connection"%><%@ page import="java.sql.Statement"%><%@ page import="java.sql.ResultSet"%><%! public String paging_next_previous(int prev, int next, int records, String css_className) { String paging_str = ""; paging_str = paging_str + "<tr>"; paging_str = paging_str + " <td align=\"center\" class=\"$css_className\"><b>"; if (prev >= 0) { paging_str = paging_str + "<a href=\"javascript: pageNav('$prev');\"><< Previous</a>"; } else { paging_str = paging_str + ""; } paging_str = paging_str + " </b></td>"; paging_str = paging_str + " <td align=\"center\" class=\"$css_className\"><b>"; if (next < records) { paging_str = paging_str + "<a href=\"javascript: pageNav('$next');\">Next >></a>"; } else { paging_str = paging_str + ""; } paging_str = paging_str + " </b></td>"; paging_str = paging_str + " </tr>"; return paging_str; }%><% int pgsize = 10; // how many records will be displayed on a page int records = 0; // total number of records in the db int offset = 0; // page offset starting record number of the page if (request.getParameter("os") != null) { //when user clicks on next or prev link we need to get offset value from request offset = Integer.parseInt(request.getParameter("os")); } String whereClause = ""; /* Let I have a table called test_table it has following columns id int name varchar email varchar */ Connection conn; try{ //Connection creation Code here. Statement stmt = conn.createStatement(); String sql = "SELECT count(*) as records FROM test_table " + whereClause; ResultSet results = stmt.executeQuery(sql); if (results.next()) { records = results.getInt("records"); } results.close(); stmt.close(); stmt = conn.createStatement(); sql = "SELECT * FROM test_table "+ whereClause +" LIMIT "+ offset +", "+ pgsize; results = stmt.executeQuery(sql); int next = offset + pgsize; int prev = (int)offset - pgsize;%><html><head> <title>Paging Demo</title> <script type="text/javascript" language="javascript"> function pageNav(os) { myform = document.listfrm; if (myform) { if (myform.os) myform.os.value = os; myform.submit(); } } </script></head><body><table class="bodyTable" align="left" cellpadding="2" cellspacing="0"> <form name="listfrm" method="post" action="pagingDemo.jsp"> <input type="hidden" name="os" value="<%=offset%>"> <%=paging_next_previous(prev, next, records, "")%> <tr> <td colspan="2" align="center" valign="top"> <table border="0" width="100%" class="borderOnly" cellspacing="1" cellpadding="2"> <% while (results.next()) { %> <tr> <td ><b><%=results.getInt("id")%></b></td> <td valign="top"><%=results.getString("meaning")%></td> <td><%=results.getString("email")%></td> </tr> <%}%> </table> </td> </tr> </form></table></body></html><%}catch(Exception e){%><div><b>Error Occured: </b><%=e.getMessage()%></div><%}finally{ conn.close();}%>