Home Servlets Counter in Init() Method



Counter in Init() Method
Posted on: March 12, 2008 at 12:00 AM
In this program we are going to make a such a servlet which will count and displays the number of times it has been accessed and by reading the init parameter to know from where the counting will begin.

Counter in Init() Method

     

In this program we are going to make a such a servlet which will count and displays the number of times it has been accessed and by reading the init parameter to know from where the counting will begin.

In this program we are going to make use of the init method of the Servlet interface which takes one argument of ServletConfig. Firstly declare a variable counter which will have the initial value of the counter. The init() method accepts an object which implements ServletConfig interface. It uses the method getInitParameter() method of  the ServletConfig interface to the value of the init parameter initial which we have defined in the deployment descriptor file. You need to parse the String value which you will get from the getInitParameter() method to a Integer. 

The code of the program is given below: 

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class CounterInInit extends HttpServlet {
  int counter;
  public void init(ServletConfig config)
 
throws ServletException{
  super.init(config);
    String initValue = 
  config.getInitParameter
("initial");
  try{
  counter = Integer.parseInt(initValue);
  }
  catch(NumberFormatException e){
  counter = 0;
  }
  }
  protected void doGet(HttpServletRequest request,
   HttpServletResponse response
)
  
throws ServletException, IOException {
   response.setContentType
("text/html");
   PrintWriter pw = response.getWriter();
   counter++;
   pw.println("Since loading this servlet"+
   "has been accessed" 
+ counter + "times");
  }
}

web.xml file for this program:

<?xml version="1.0" encoding="ISO-8859-1"?>
<!--<!DOCTYPE web-app
 PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd"> -->

<web-app>
 <servlet>
  <servlet-name>Hello</servlet-name>
  <servlet-class>CounterInInit</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>Hello</servlet-name>
 <url-pattern>/CounterInInit</url-pattern>
 </servlet-mapping>
</web-app>

The output of the program is given below:

Download this example

Related Tags for Counter in Init() Method:
cstringdeploymentfilestlinterfacetimescriptobjectservletparsecountmakeintegermethodvariablesedgetdisplayipvaluenumberreadparameterintdeployriathisconfigdefinewhereprogramtoiniramreadingsseargumentcountereilitcountingdesinitsplvaruseimfromfirstceinnoasdescriptormntplaypartrletjispadaceclesdeclareemmeobjproparamacceptdefinedtorwhichsservletconfigsuspeedisplaysginesskisirhaimellmetermplepleplgoeaandarccconfstrtcorvvausesscrssriringripthavbeginstaccessabablaludispfaceecletcfinetcinitialjepleplptsprndonomogro


More Tutorials from this section

Ask Questions?    Discuss: Counter in Init() Method   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.