All pastes #674986 Raw Edit

Java Pagination

public java v1 · immutable
#674986 ·published 2007-08-29 18:37 UTC
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');\">&lt;&lt; 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 &gt;&gt;</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();}%>