logo

Pagination In Servlet


Show

To Distribute large number of records into various parts, we use pagination. It permits users to display a part of records only. Loading all records in a single page may take more time, so it is always recommended to make pagination. In Servlet, we can evolve pagination examples Easily.

In this servlet pagination example, we're the MySQL database to fetch information.

Here, we've created an "emp" table in the "test" database. The emp table has 3 fields: id, name and salary. Insert records manually or you can import our sql file or Either you can create a table.

Index.html

<a href="ViewServlet?page=1">View Employees</a>  

ViewServlet.java

package com.javatpoint.servlets;  

import java.io.IOException;  
import java.io.PrintWriter;  
import java.util.List;  
import javax.servlet.ServletException;  
import javax.servlet.annotation.WebServlet;  
import javax.servlet.http.HttpServlet;  
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpServletResponse;  
import com.javatpoint.beans.Emp;  
import com.javatpoint.dao.EmpDao;   

@WebServlet("/ViewServlet")  
public class ViewServlet extends HttpServlet {  
    private static final long serialVersionUID = 1L;  
    protected void doGet(HttpServletRequest request, HttpServletResponse response)   
           throws ServletException, IOException {  
        response.setContentType("text/html");  
        PrintWriter out=response.getWriter();            

        String spageid=request.getParameter("page");  
        int pageid=Integer.parseInt(spageid);  
        int total=5;  
        if(pageid==1){}  
        else{  
            pageidpageid=pageid-1;  
            pageidpageid=pageid*total+1;  
        }  
        List<Emp> list=EmpDao.getRecords(pageid,total);    

        out.print("Page No: "+spageid+"");  
        out.print("");  
        out.print("IdNameSalary");  
        for(Emp e:list){  
            out.print(""+e.getId()+""+e.getName()+""+e.getSalary()+"");  
        }  
        out.print("");  

        out.print("1 ");  
        out.print("2 ");  
        out.print("3 ");  

        out.close();  
    }  
}  

Emp.java

package com.javatpoint.beans;  

public class Emp {  
private int id;  
private String name;  
private float salary;  
//getters and setters  
}  

EmpDao.java
package com.javatpoint.dao;  
import com.javatpoint.beans.*;  
import java.sql.*;  
import java.util.ArrayList;  
import java.util.List;  
public class EmpDao {   

    public static Connection getConnection(){  
        Connection con=null;  
       try{  
            Class.forName("com.mysql.jdbc.Driver");  
            con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","","");  
        }catch(Exception e){System.out.println(e);}  
        return con;  
    }  
  
    public static List<Emp> getRecords(int start,int total){  
        List<Emp> list=new ArrayList<Emp>();  
        try{  
            Connection con=getConnection();  
            PreparedStatement ps=con.prepareStatement("select * from emp limit "+(start-1)+","+total);  
            ResultSet rs=ps.executeQuery();  
            while(rs.next()){  
                Emp e=new Emp();  
                e.setId(rs.getInt(1));  
                e.setName(rs.getString(2));  
                e.setSalary(rs.getFloat(3));  
                list.add(e);  
            }  
           con.close();  
        }catch(Exception e){System.out.println(e);}  
        return list;  
    }  
}  

Download SQL File

Download SQL File

Download mysql-connector.jar file

Download mysql-connector.jar

Download Project

Download this example (Developed in Eclipse)

Output