Hit Counter Servlet

Hit Counter Servlet

Sometimes, it is extremely useful to know the number of times a Web page is hit. This is especially so if a web site depends on usage statistics in order to determine peak access times. It is fairly simple to count the hits using a servlet. As we know, when a servlet is hit, the “public void doGet(HttpServletRequest request, HttpServletResponse response)” method of http servlet executes. This is exactly where we can update a variable that keeps count of number of web page (servlet) hits. The following code illustrates this:

 import javax.servlet.*; import javax.servlet.http.*; public class PageHitCounter extends HttpServlet {    private int numPageHits;                   public void init()    {        //here we can read in the previous value of  numPageHits from        //a file or a database, or ....        //if there is no initial value, or we fail to read in the value,        //initialize numPageHits    }                public void doGet(HttpServletRequest request,                              HttpServletResponse response)                                    throws IOException, ServletException {    //this method executes whenever the servlet is hit    //increment numPageHits    numPageHits++; }                public void destroy() {    //the servlet instance is about to be destroyed    //write the value of numPageHits to a file,    //or a database, or ... } 

Note that by involving the init(), an destroy() method in the hit-counting process, we can provide persistence for the value of numPageHits.


Share the Post: