Java Tutorial/Servlet/Counter

Материал из Java эксперт
Перейти к: навигация, поиск

Servlet Simple Counter

   <source lang="java">

import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet {

 int count = 0;
 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setContentType("text/plain");
   PrintWriter out = res.getWriter();
   count++;
   out.println("Since loading, this servlet has been accessed " +
               count + " times.");
 }

}</source>





Servlet Static Field As Counter

   <source lang="java">

import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.util.*; public class MyServlet extends HttpServlet {

 static int classCount = 0;  // shared by all instances
 int count = 0;              // separate for each servlet
 static Hashtable instances = new Hashtable();  // also shared
 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setContentType("text/plain");
   PrintWriter out = res.getWriter();
   count++;
   out.println("Since loading, this servlet instance has been accessed " + count + " times.");
   // Keep track of the instance count by putting a reference to this
   // instance in a Hashtable. Duplicate entries are ignored.
   // The size() method returns the number of unique instances stored.
   instances.put(this, this);
   out.println("There are currently " +instances.size() + " instances.");
   classCount++;
   out.println("Across all instances, this servlet class has been " +
               "accessed " + classCount + " times.");
 }

}</source>